我正在尝试合并两个数据帧。我用的是Jupyter笔记本和熊猫数据框。我的两个df是这样的:
gbdf.dtypes:
product_name object
Quantity float64
Product_id int64
product_group1 int64
product_group1_name object
product_group2 int64
product_group2_name object
packing_unit object
packing_amount int64
dtype: object
trns.dtypes:
Store_id int64
Date object
Price int64
Net price int64
Purchase price int64
Hour int64
product_id int64
Quantity int64
dtype: object
但是,当我试图逃跑的时候
gbdfprice = gbdf.merge(gbdf, trns, left_on = 'Product_id', right_on = 'product_id')
我明白了
KeyError: 'product_id'
知道为什么吗?
您使用的格式(接受左和右
DataFrame
参数)是与pandas顶级模块关联的方法,但是您实际上使用了与只接受右参数的DataFrame
对象关联的方法。从源代码中可以看到,
left.merge(right...)
只需导入另一个merge
方法并运行merge(self,right,...)
。因此,正如@ayhan所指出的,只需从参数列表中删除
gbdf
,或者也可以用pd.merge
替换gbdf.merge
调用,并保持参数列表不变。相关问题 更多 >
编程相关推荐