怎么样可以统计这个表每一列中0,1,2的个数
依次统计, 那就是要遍历咯。 以下是算 1 的个数。
df1_columns = df1.columns
df1_count = [0 for n in range(len(df1_columns))]
for i in range(df1.shape[0]):
for n in range(len(df1_columns)) :
if df1[df1_columns[n]][i] == 1:
df1_count[n] = df1_count[n] + 1
for n in range(len(df1_columns):
print(df1_columns[n],df1_count[n])
使用value_counts函数:
import pandas as pd
df=pd.DataFrame({'a':[0,1,0,2,0],'b':[0,0,2,0,1],'c':[1,1,2,2,0]})
res=[]
for d in df.columns:
res.append(df[d].value_counts())
print(res)
如有帮助请点采纳。
import pandas as pd
import numpy as np
d = {'A': [0, 0, 2, 0, 1, 3, 1], 'B': [0, 1, 1, 1, 0, 2, 1], }
df = pd.DataFrame(data = d)
print(df)
def f(se):
return se.groupby(se).count()
df = df.apply(f)
print(df.iloc[:3, ])
'''--result
A B
0 0 0
1 0 1
2 2 1
3 0 1
4 1 0
5 3 2
6 1 1
A B
0 3 2.0
1 2 4.0
2 1 1.0
'''