import pandas as pd

test_values = []

test_values.append(np.array([1,0,1]))
test_values.append(np.array([1,0,1]))
test_values.append(np.array([0,1,1]))

test_values

df = pd.DataFrame(test_values)

呈现此数据帧将生成:
   0  1  2
0  1  0  1
1  1  0  1
2  0  1  1

我正在尝试计算列中每个值出现的次数,因此对于以上数据帧,应生成以下内容:
1 occurs 2, 0 occurs 0.
0 occurs 2, 1 occurs 1.
1 occurs 3, 0 occurs 0.

使用.values():
for i in range(0 , df.shape[1]) :
    print(df.iloc[:,i].value_counts().values)

生产:
[2 1]
[2 1]
[3]

标签已从每个列中移除。如何访问每个计数的关联标签?因此可以产生:
1 occurs 2, 0 occurs 0.
0 occurs 2, 1 occurs 1.
1 occurs 3, 0 occurs 0.

最佳答案

简单解决方案:

df.apply(pd.Series.value_counts)

关于python - 计算每个值在pandas列中出现的次数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54327469/

10-12 20:56