这是我的问题,我有两列如下:
A B
-3 4
-6 -8
12 14
我想创建一个代码,如果值> -2则将所有值替换为1,否则将其替换为0。
我知道使用numpy可以很简单地使用
d["newcolum"]=np.where(d < -2,1,0)
,但我在使用熊猫方面遇到了更多困难,因为熊猫的where函数仅在不满足条件的情况下显示其值。
你们知道一些可以帮助我的东西吗? 谢谢
答案 0 :(得分:1)
如果要设置0
和1
值,则将布尔掩码转换为整数:
df = (df < -2).astype(int)
print (df)
A B
0 1 0
1 1 1
2 0 0
绝对可以使用np.where
,仅需要DataFrame构造函数:
df = pd.DataFrame(np.where(df < -2,1,0), index=df.index, columns=df.columns)
print (df)
A B
0 1 0
1 1 1
2 0 0