我有一个 pandas 数据框,看起来像这样:
数据框填充了 4 个不同的字符串:'00', '01', '10',
和'11'
。我希望计算每列中值的每次出现,以便上面的数据将返回一个如下所示的结果数据帧:
A B C D E
00 2 1 3 0 3
01 2 2 0 2 1
10 0 0 1 2 0
11 1 2 1 1 1
可以使用以下代码创建原始数据框:
dft = pd.DataFrame({'A' : ['11', '01', '01', '00', '00'],
'B' : ['00', '01', '11', '01', '11'],
'C' : ['00', '00', '10', '00', '11'],
'D' : ['10', '01', '11', '10', '01'],
'E' : ['00', '01', '00', '11', '00'],})
dft
最佳答案
您可以将 value_counts
与字典理解结合使用来生成值,然后使用该数据创建 DataFrame。
>>> pd.DataFrame({col: dft[col].value_counts() for col in dft}).fillna(0)
A B C D E
00 2 1 3 0 3
01 2 2 0 2 1
10 0 0 1 2 0
11 1 2 1 1 1
关于python - 如何计算 pandas 数据框中一系列列的一组值的出现次数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35185944/