Ash*_*ton 1 python replace dataframe pandas
我想替换数据中的整行,但要满足该条件的行中的一列.即红色是数据帧
['1' 0.0 ' P']
['2' 0.0 ' S']
['3' 64 ' M']
['4' 70 ' M']
red=red.replace(to_replace=' M', value=0)
Run Code Online (Sandbox Code Playgroud)
返回结果:
['1' 0.0 ' P']
['2' 0.0 ' S']
['3' 64 0]
['4' 70 0]
Run Code Online (Sandbox Code Playgroud)
但我希望它能回归:
['1' 0.0 ' P']
['2' 0.0 ' S']
['3' 0 0]
['4' 0 0]
Run Code Online (Sandbox Code Playgroud)
使用loc过滤掉你想零数据框的部分,然后将值分配给它.下面,它选择所有行,其中c列的值是'M',它需要从所有列b到c,并设定该选择的值0:
df = pd.DataFrame([['1', 0.0, 'P'],
...: ['2', 0.0, 'S'],
...: ['3', 64, 'M'],
...: ['4', 70, 'M'],], columns=['a', 'b', 'c'])
df.loc[df['c']=='M','b':'c'] = 0
df
Out[54]:
a b c
0 1 0 P
1 2 0 S
2 3 0 0
3 4 0 0
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1213 次 |
| 最近记录: |