如果行值在python中的x之间,则替换整个列



我想替换所有列值,如果第一行值在5和10之间

这里是df

df = pd.DataFrame(data={'a':[13,5,6,21,9],
'b': [11,5,6,1,2], 
'c': [9,28,45,61,31],
'd': [5,16,23,1,23]})

和这里是我的命令是不工作…

c = df.columns
df.loc[df.loc[0].between(5,10), c] = 'test'

预期输出如下

df = pd.DataFrame(data={'a':[13,5,6,21,9],
'b': [11,5,6,1,2], 
'c': ['test','test','test','test','test'],
'd': ['test','test','test','test','test']})

欢迎提出任何建议,谢谢。

由于该条件是针对列的,因此请确保它转到列的位置:

df.loc[:, df.loc[0].between(5, 10)] = 'test'
df    
a   b     c     d
0  13  11  test  test
1   5   5  test  test
2   6   6  test  test
3  21   1  test  test
4   9   2  test  test

最新更新