2024-06-16 00:38:21 发布
网友
基本上,我有两个数据帧,第一个看起来像这样:
第二个是这样的:
我想得到第二个数据框中的列“lat”和“lnt”,并且仅当城市名称在两个数据框中匹配时才添加到第一个数据框中。我尝试使用pd.merge(),但它正在创建具有重复值的新行。 如果可能的话,我想在没有任何匹配的行中添加一个NaN,但我不想删除或向原始数据帧添加行
pd.merge()
Pandas merge function默认为内部联接。因为您希望在df2到df1的列中合并,所以应该使用左联接。这将为您提供df1的所有行以及df2中的匹配值
df2
df1
df3 = df1.merge(df2, on = 'city', how = 'left')
merged_df = df1.merge(df2, how = 'inner', on = ['City'])
Pandas merge function默认为内部联接。因为您希望在
df2
到df1
的列中合并,所以应该使用左联接。这将为您提供df1
的所有行以及df2
中的匹配值相关问题 更多 >
编程相关推荐