我有一个长数据框,只有一列,大约有80万行。我的数据框看起来像这样
54
53
53
53
53
...
0
0
0
所以我需要计算每个值的出现次数并将其保存到数据帧中,这样结果将是这样
54 1
53 1000
52 800
...
0 100000
我尝试使用df.groupby(0)
,但它仅返回一个对象。如何获得两列数据框(或1列和显示值的行索引)?
答案 0 :(得分:1)
使用value_counts
和to_frame
:
df = pd.DataFrame([1,2,4,5,5], columns=['values'])
df['values'].value_counts().to_frame().reset_index().rename(columns={'index':'values', 'values':'count'})
values count
0 5 2
1 4 1
2 2 1
3 1 1