我有一个如下所示的 MWE:
import pandas as pd
test = pd.DataFrame({'A':['a','b'], 'B':['c','d']})
如果 A 列中的相应值等于“a”,我想用字符串替换 B 列中的值。我尝试了一些方法:
In [27]: test[test['A']=='a']['B'] = 'REPLACEMENT'
In [28]: test
Out[28]:
A B
0 a c
1 b d
和:
In [30]: test.ix[test['A']=='a','B'].values.fill('REPLACEMENT')
In [31]: test
Out[31]:
A B
0 a c
1 b d
它们似乎都不起作用。如何实现这一目标?
最佳答案
In [64]:
test.B.loc[test.A == 'a'] = 'Replacement'
test
Out[64]:
A B
0 a Replacement
1 b d
关于python - Pandas 在数据帧子集上设置行值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33740813/