Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.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 转换dataframe中的值列_Python_Pandas - Fatal编程技术网

Python 转换dataframe中的值列

Python 转换dataframe中的值列,python,pandas,Python,Pandas,我想在各自的C列值中转换0.00值 输出必须是: A B C 0 mel 0.00 3.99 1 sid 7.23 13.30 2 alc 0.00 2.14 3 fas 8.12 108.00 我试过: A B C 0 mel 3.99 3.99 1 sid 7.23 13.30 2 alc 2.14 2.14 3 fas 8.12 108.00 替换+b填充 d

我想在各自的C列值中转换0.00值

输出必须是:

     A     B       C
0  mel  0.00    3.99
1  sid  7.23   13.30
2  alc  0.00    2.14
3  fas  8.12  108.00
我试过:

     A     B       C
0  mel  3.99    3.99
1  sid  7.23   13.30
2  alc  2.14    2.14
3  fas  8.12  108.00

替换
+
b填充

df.replace(["0.00"], ["C"])


替换
+
b填充

df.replace(["0.00"], ["C"])

另一种方式:

获取要填充的行的索引。然后替换这些值:

df.loc[df.B==0,'B']=df.C
df
Out[2052]: 
     A     B       C
0  mel  3.99    3.99
1  sid  7.23   13.30
2  alc  2.14    2.14
3  fas  8.12  108.00
您可以将其作为一行,但为了清晰起见,我这样写。

另一种方式:

获取要填充的行的索引。然后替换这些值:

df.loc[df.B==0,'B']=df.C
df
Out[2052]: 
     A     B       C
0  mel  3.99    3.99
1  sid  7.23   13.30
2  alc  2.14    2.14
3  fas  8.12  108.00
您可以将其作为一行,但为了清晰起见,我还是这样写的。

单向:

idx = df["B"] == 0
df.loc[idx, "B"] = df.loc[idx, "C"]
print(df)
#     A     B       C
#0  mel  3.99    3.99
#1  sid  7.23   13.30
#2  alc  2.14    2.14
#3  fas  8.12  108.00
结果:

df.loc[df['B'].eq(0), 'B'] = df['C']
单向:

idx = df["B"] == 0
df.loc[idx, "B"] = df.loc[idx, "C"]
print(df)
#     A     B       C
#0  mel  3.99    3.99
#1  sid  7.23   13.30
#2  alc  2.14    2.14
#3  fas  8.12  108.00
结果:

df.loc[df['B'].eq(0), 'B'] = df['C']
另一艘班轮:

     A     B       C
0  mel  3.99    3.99
1  sid  7.23   13.30
2  alc  2.14    2.14
3  fas  8.12  108.00
另一艘班轮:

     A     B       C
0  mel  3.99    3.99
1  sid  7.23   13.30
2  alc  2.14    2.14
3  fas  8.12  108.00

甚至:
df.B.where(df.B!=0,df.C,inplace=True)
@JonClements是的,也许,面具和np.where也适用于此:-)关于猫科动物和剥皮以及许多方法和所有这些:)甚至:
df.B.where(df.B!=0,df.C,inplace=True)
@JonClements是的,也许,面具和np。这也适用于:-)关于猫科动物和剥皮以及许多方法和所有这些:)