我只是想知道是否有可能将pandas .value_counts()的输出作为新的数据框?它通常以表格的形式显示在几列中,但以下内容无效:
new_df = df['col'].value_counts()
一个相关的问题(部分是为什么我要执行上述操作)是我在努力使用df['col'].value_counts()
的输出。
如果您的数据如下所示:
Num, Let
0,A
1,A
2,B
然后您可以运行
counts = df['Let'].value_counts()
print counts['A']
会显示2。我可以将此值2分配给变量,例如max_let=counts['A']
。如果我想输出最大值,我也可以做类似counts.head(1)
的事情。但是,如果我也想将字符串“ A”分配给变量(这就是为什么我想要额外的数据帧),那有可能吗?并且有一种方法可以设置max_let
来获取任何结果的值而不必指定'A'(因为我似乎无法使用counts.head(1)
来做到这一点?
希望那不是太令人费解。
答案 0 :(得分:1)
您应该使用reset_index
new_df = df['col'].value_counts().reset_index()