Pandas-当密钥存在时获取密钥错误

2024-04-27 20:58:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图加入熊猫的两个数据帧。

第一个框架称为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'

我仔细检查了拼写,公司显然在做生意,我不知道是什么原因造成的。

有什么想法吗?

谢谢!


Tags: 数据right框架iddateonaccounttrades
2条回答

本质上,当没有这样的列名时,keyError在pandas python中显示,例如,您正在键入df.loc[df['one']==10],但是列名“one不存在”,不管是谁,如果它存在,并且您仍然得到相同的错误try place try and except语句,我的问题是使用try and except语句解决的。

例如

try:
   df_new = df.loc[df['one']==10]
except KeyError:
   print('No KeyError')

您的Trades数据帧有一个列,所有预期的列名都聚合到一个字符串中。检查分析文件的代码。

相关问题 更多 >