Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将数据帧值转换为int,添加它们并使用结果创建新列?_Python_Pandas - Fatal编程技术网

Python 将数据帧值转换为int,添加它们并使用结果创建新列?

Python 将数据帧值转换为int,添加它们并使用结果创建新列?,python,pandas,Python,Pandas,我有一个非常大的字符串数字数据框,例如: a,b,c "1","2","3" "4","5","6" "7","8","9" 我想创建一个新的列d,添加a+c,因此最终结果将是: a,b,c,d 1,2,3,4 4,5,6,10 7,8,9,16 我仍在尝试将a+c中的列转换为字符串,但我不知道如何将它们相加并创建结果的新列。请帮我解决最后一个问题 在我看来read\u csv将列转换为整数 因此,请使用: df = pd.read_csv(file) df['d'] = df['a'] +

我有一个非常大的字符串数字数据框,例如:

a,b,c
"1","2","3"
"4","5","6"
"7","8","9"
我想创建一个新的列
d
,添加
a+c
,因此最终结果将是:

a,b,c,d
1,2,3,4
4,5,6,10
7,8,9,16

我仍在尝试将
a+c
中的列转换为字符串,但我不知道如何将它们相加并创建结果的新列。请帮我解决最后一个问题

在我看来
read\u csv
将列转换为整数

因此,请使用:

df = pd.read_csv(file)
df['d'] = df['a'] + df['c']
但如果失败,请尝试转换为整数或浮点:

df = pd.read_csv(file)
df['d'] = df['a'].astype(int) + df['c'].astype(int)
#floats 
#df['d'] = df['a'].astype(float) + df['c'].astype(float)
如果数值之间还有一些字符串,则可以将问题值转换为
NaN
s和sum:

df = pd.read_csv(file)
df['d'] = pd.to_numeric(df['a'], errors='coerce') + pd.to_numeric(df['c'],  errors='coerce')

这很漂亮,非常感谢!如果我想使用另一个值来处理数据,该怎么办?比如说,如果我希望D列是A列乘以5的值。@JorgeGill然后使用
df['D']=(df['A']+df['c'])*5
df['D']=df['A']+df['c']*5
-如果需要按和或按列进行倍数
b