最佳答案
给定一个熊猫数据框架(Panda DataFrame) ,其中有多个列具有分类值(0或1) ,是否可以方便地同时获取每个列的 value _ count?
例如,假设我生成一个 DataFrame,如下所示:
import numpy as np
import pandas as pd
np.random.seed(0)
df = pd.DataFrame(np.random.randint(0, 2, (10, 4)), columns=list('abcd'))
我可以得到一个这样的数据框架:
a b c d
0 0 1 1 0
1 1 1 1 1
2 1 1 1 0
3 0 1 0 0
4 0 0 0 1
5 0 1 1 0
6 0 1 1 1
7 1 0 1 0
8 1 0 1 1
9 0 1 1 0
如何方便地获取每个列的值计数,并方便地获取以下内容?
a b c d
0 6 3 2 6
1 4 7 8 4
我目前的解决办法是:
pieces = []
for col in df.columns:
tmp_series = df[col].value_counts()
tmp_series.name = col
pieces.append(tmp_series)
df_value_counts = pd.concat(pieces, axis=1)
但是一定有一种更简单的方法,比如堆叠、旋转或分组?