我有以下数据框:
In [11]: import pandas as pd
In [12]: mydict = {'foo':[0, 0.3], 'bar':[1,0.55], 'qux': [0.3,4.1]}
In [13]: df = pd.DataFrame.from_dict(mydict, orient='index')
In [14]: df
Out[14]:
0 1
qux 0.3 4.10
foo 0.0 0.30
bar 1.0 0.55
我要做的是用0替换小于1的所有值。 屈服:
0 1
qux 0 4.10
foo 0 0
bar 1.0 0
我怎样才能做到?
使用布尔索引并传递条件:
为了显示这里发生了什么,执行
df < 1
将返回一个布尔索引:然后我们将其作为掩码传递给
df
,然后可以将新值指定为df[df<1]
有关进一步的示例,请参见docs相关问题 更多 >
编程相关推荐