2017-07-25 46 views
1

在熊貓中,如何將一個值添加到其他列中的字符串有條件的列中? (類似的東西的二維切片操作?)如何將值添加到其他列上的列條件

例如,具有像這樣的數據幀:

df = pd.DataFrame({'name': ['foo', 'foo', 'bar', 'bar'], 
        'colx': [1, 2, 3, 4], 
        'coly': [5, 6, 7, 8]}) 

如何可能添加10〜colx柱如果柱name是FOO?

產生的DF應該是這樣的:

colx coly name 
0 11  5 foo 
1 12  6 foo 
2  3  7 bar 
3  4  8 bar 

回答

4

可以使用loc運營商進行切片,當你要修改的值:

df.loc[df.name == 'foo','colx'] += 10 

用途的底層切片方法這將比循環或在數據框上使用apply更快。如果你的數據幀變大了,那就更好了。

相關問題