我有一个 Pandas 数据框“结果”。此数据框中的属性之一是“交易”,如果它是非现金交易,它包含类似 0 的值,如果交易是现金交易,则包含一些实数。此属性如下所示:
result['transaction'] = [0,0,0,23.2,432,12,0,0,56.4]
我想更改此属性的值,以便所有非零值都将替换为 1。因此我的结果属性应如下所示:
result['transaction'] = [0,0,0,1,1,1,0,0,1]
我该怎么做?
最佳答案
另一种选择是使用 astype
转换为 bool
,然后转换为 int
。
df.astype(bool).astype(int)
哪些输出
transaction
0 0
1 0
2 0
3 1
4 1
5 1
6 0
7 0
8 1
根据我的经验,这种方法被证明是相当快的。
关于python - 用 1 替换 Pandas 数据框中的非零值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45790889/