Python 如何对熊猫栏目进行多数投票
我有一个数据框,它有10个不同的列,Python 如何对熊猫栏目进行多数投票,python,pandas,Python,Pandas,我有一个数据框,它有10个不同的列,A1,A2,…,A10。这些列包含y或n。如果大多数列(A1,A2,…,A10)为y或n,则我想创建另一个值为y的列。我如何才能做到这一点?使用: 例子 如果有必要处理真正多数和分裂决策之间的区别,您可以使用。例如: df['majority'] = df.mode(axis=1)[0] np.random.seed(0) df = pd.DataFrame(np.random.choice(['y', 'n'], size=(10, 10))) prin
A1
,A2
,…,A10
。这些列包含y
或n
。如果大多数列(A1
,A2
,…,A10
)为y
或n
,则我想创建另一个值为y
的列。我如何才能做到这一点?使用:
例子
如果有必要处理真正多数和分裂决策之间的区别,您可以使用。例如:
df['majority'] = df.mode(axis=1)[0]
np.random.seed(0)
df = pd.DataFrame(np.random.choice(['y', 'n'], size=(10, 10)))
print(df)
0 1 2 3 4 5 6 7 8 9
0 y n n y n n n n n n
1 n y y n y y y y y n
2 y n n y y n n n n y
3 n y n y n n y n n y
4 y n y n n n n n y n
5 y n n n n y n y y n
6 n y n y n y y y y y
7 n n y y y n n y n y
8 y n y n n n n n n y
9 n n y y n y y n n y
df['majority'] = df.mode(axis=1)[0]
print(df)
0 1 2 3 4 5 6 7 8 9 majority
0 y n n y n n n n n n n
1 n y y n y y y y y n y
2 y n n y y n n n n y n
3 n y n y n n y n n y n
4 y n y n n n n n y n n
5 y n n n n y n y y n n
6 n y n y n y y y y y y
7 n n y y y n n y n y n
8 y n y n n n n n n y n
9 n n y y n y y n n y n
mode = df.mode(axis=1)
df['majority'] = np.where(mode.isna().any(1), mode[0], 'split')
print(df)
0 1 2 3 4 5 6 7 8 9 majority
0 y n n y n n n n n n n
1 n y y n y y y y y n y
2 y n n y y n n n n y n
3 n y n y n n y n n y n
4 y n y n n n n n y n n
5 y n n n n y n y y n n
6 n y n y n y y y y y y
7 n n y y y n n y n y split
8 y n y n n n n n n y n
9 n n y y n y y n n y split