[英]How do I fix TypeError in Python
它显示以下错误
TypeError: can only concatenate str (not "int") to str
这是代码
data.loc[(data['Account'] == Value) & (data['Contract End Month'] >= 7),
'End Fiscal Year'] = data['Contract End Year'] + 1
看起来你的data['Contract End Year']
是一个str
实例,在执行添加之前尝试将其转换为int
:
data.loc[(data['Account'] == Value) & (data['Contract End Month'] >= 7),'End Fiscal Year'] = int(data['Contract End Year']) + 1
错误消息表明您正在尝试将字符串与 integer 连接起来。看起来“Contract End Year”列的类型为字符串,但您正在尝试向其添加 1,就好像它是 integer 一样。您可以使用 pandas.to_numeric 方法将其转换为 int,然后加 1,稍后您可以将其转换回 str
data['Contract End Year'] = pd.to_numeric(data['Contract End Year'], errors='coerce')
data.loc[(data['Account'] == Value) & (data['Contract End Month'] >= 7),
'End Fiscal Year'] = data['Contract End Year'] + 1
data['End Fiscal Year'] = data['End Fiscal Year'].astype(str)
这应该修复 TypeError 并允许您对“合同结束年份”列执行算术运算。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.