Pandas 外连接未按预期工作

问题描述 投票:0回答:1

我想合并打开的 Bixi 数据集中的两个 CSV 文件。问题是外部合并后,缺少行:

In [148]: outer_merged_df['Code']==7150
Out[148]: 
0          False
1          False
2          False
3          False
4          False
           ...  
1045584    False
1045585    False
1045586    False
1045587    False
1045588    False
Name: Code, Length: 1045589, dtype: bool

但是这一行出现在左侧数据集中:

In [151]: df['Code']==7150
...
615     True

这是外部合并的代码:

outer_merged_df = pd.merge(df, df_ride, left_on='Code', right_on='start_station_code', how='outer', indicator=True)

这里是读取碧溪游乐设施和车站的代码:

df_ride = pd.read_csv('OD_2019-08.csv')
df = pd.read_csv('Stations_2019.csv')

还有 CSV 文件的链接。如果您要下载它们,请使用 2019 年 8 月的文件。

当我进行左合并时,它找到了它:

In [154]: merged_df_left=pd.merge(df, df_ride, left_on='Code', right_on='start_station_code', how='left')

In [155]: merged_df_left['Code']==7150
Out[155]: 
913466     True
Name: Code, Length: 913470, dtype: bool

这非常令人困惑。有人可以给个提示吗?

python pandas
1个回答
0
投票

您确定outer_merged_df['Code']==7150不返回任何行吗?

您可以尝试下面的代码并看到它返回一行。

outer_merged_df[outer_merged_df['Code']==7150]
© www.soinside.com 2019 - 2024. All rights reserved.