【发布时间】:2017-10-01 23:17:23
【问题描述】:
我正在尝试在 Pandas 中加入两个数据框。
第一帧称为 Trades,包含以下列:
TRADE DATE
ACCOUNT
COMPANY
COST CENTER
CURRENCY
第二个框架称为 Company_Mapping,包含以下列:
ACTUAL_COMPANY_ID
MAPPED_COMPANY_ID
我正在尝试使用此代码加入他们:
trade_df = pd.merge(left=Trades, right = Company_Mapping, how = 'left', left_on = 'COMPANY', right_on = 'ACTUAL_COMPANY_ID'
这会返回:
KeyError: 'COMPANY'
我仔细检查了拼写,COMPANY 显然属于 Trades,但我不知道是什么原因造成的。
有什么想法吗?
谢谢!
【问题讨论】:
-
print Trades.columns并报告打印出来的内容。 -
@piRSquared 交易日期、账户、公司、成本中心、货币
-
列名中是否有多余的字符?喜欢
TRADE DATE? -
这不是它的呈现方式。它看起来像
Index(['co'], dtype='object')。请复制并粘贴打印语句的输出表格 -
谢谢你,你的问题就在这里。您有一个带有大混搭字符串的列。看
df.shape。它应该是一些以1作为第二个元素(x, 1)的元组。如果您想解决这个问题,您需要向我们展示您正在解析的文件的示例,或者数据框的示例,以便我们修复它。然后你的合并应该工作。此外,您的其他数据框可能会遇到同样的问题。
标签: python python-2.7 pandas