为了账号安全,请及时绑定邮箱和手机立即绑定

无法通过使用预定义参数作为字符串的一部分来引用列

无法通过使用预定义参数作为字符串的一部分来引用列

富国沪深 2023-07-05 15:26:42
我有一个数据集,我想通过使用预定义参数作为字符串的一部分来引用我的列。这样做的原因是我想要保留的列会根据一年中的时间和年份而变化。我的参数是:year = '20'这工作正常并给我想要的结果:df.['Q1 FY20'] = df.['Q1 FY20'].astype('int32')但是当我尝试用参数替换字符串中的“20”时,我得到 KeyError: 'Q1 FY20':df.['Q1 FY' + year] = df.['Q1 FY' + year].astype('int32')我真的不明白这一点,因为我已经检查过:type('Q1 FY20') == type('Q1 FY' + year) 'Q1 FY20' == 'Q1 FY' + year......它们都是真的。我究竟做错了什么?
查看完整描述

2 回答

?
LEATH

TA贡献1936条经验 获得超6个赞

你可以试试这个:


year = '20'

column_name = "Q1 FY" + year


df[column_name] = df[column_name].astype('int32')

快照:

//img1.sycdn.imooc.com//64a51b5b00016bce06310702.jpg

查看完整回答
反对 回复 2023-07-05
?
扬帆大鱼

TA贡献1799条经验 获得超9个赞

我发现了我的错误,在进行所需的数据清理之前,我试图在实例中测试代码。

当我用我的参数替换实际代码时,它起作用了。然而,我仍然不明白为什么当我写出完整的字符串时没有得到任何 KeyError 。


查看完整回答
反对 回复 2023-07-05
  • 2 回答
  • 0 关注
  • 82 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信