我需要对列和列b进行求和,其中包含第1行中的字符串
>>> df
a b
0 c d
1 1 2
2 3 4
>>> df['sum'] = df.sum(1)
>>> df
a b sum
0 c d cd
1 1 2 3
2 3 4 7
我只需要添加数值并得到类似的输出
>>> df
a b sum
0 c d "dummyString/NaN"
1 1 2 3
2 3 4 7
我只需要添加一些列
df['sum']=df['a']+df['b']
解决方案如果是混合数据 - 数字与字符串
我认为最简单的是将sum
之后的非数值转换为to_numeric
:
NaN
要么:
df['sum'] = pd.to_numeric(df[['a','b']].sum(1), errors='coerce')
编辑:
解决方案ID号码是字符串表示 - 首先转换为数字然后qazxsw poi:
df['sum'] = pd.to_numeric(df['a']+df['b'], errors='coerce')
print (df)
a b sum
0 c d NaN
1 1 2 3.0
2 3 4 7.0
要么:
sum