我有一个171行和11列的数据框。
11列的值均为0或1 我如何创建一个新的列,该列将为0或1,这取决于现有列是否为0或1的多数?
答案 0 :(得分:0)
您可以做到
useEffect
答案 1 :(得分:0)
使用mean
行,并用DataFrame.gt
比较是否大于或等于DataFrame.ge
等于或大于0.5
(如果相同数量的0
,则取决于输出和1
),最后通过Series.astype
将掩码转换为整数:
np.random.seed(20193)
df = pd.DataFrame(np.random.choice([0,1], size=(5, 4)))
df['new'] = df.mean(axis=1).gt(0.5).astype(int)
print (df)
0 1 2 3 new
0 1 1 0 0 0
1 1 1 1 0 1
2 0 0 1 0 0
3 1 1 0 1 1
4 1 1 1 1 1
np.random.seed(20193)
df = pd.DataFrame(np.random.choice([0,1], size=(5, 4)))
df['new'] = df.mean(axis=1).ge(0.5).astype(int)
print (df)
0 1 2 3 new
0 1 1 0 0 1
1 1 1 1 0 1
2 0 0 1 0 0
3 1 1 0 1 1
4 1 1 1 1 1
答案 2 :(得分:0)