的呼叫签名pd.merge仅接受 2 个 DataFrame 进行合并;
pd.merge(left, right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', '_y'), copy=True, indicator=False, validate=None)
所以你需要分两步完成:
df = pd.merge(energy, GDP, on="Country")
df = pd.merge(df, ScimEn, on="Country")
或者将这两个步骤链接在一起数据框.merge这允许立即使用新的 DataFrame:
df = energy.merge(GDP, on="Country").merge(ScimEn, on="Country")
另外,设置how
明确关键字。如果某些国家/地区位于其中一个 DataFrame 中但不在其他 DataFrame 中,则使用默认值进行合并how=inner
会导致数据丢失,应更改为outer
如果您想保留所有 DataFrame 中的所有数据。