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

replace entire column if row value is between x in python

如果第一行值介于 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