我只是遇到了同样的问题,所以我在这里提出了我的想法。
警告
当你处理的数据结构
Pandas
,你必须知道
返回类型
.
这里的另一个解决方案
就像前面提到的那样,
熊猫
提供API
pd.Series.to_frame
.
步骤1
你也可以把
pd.Series
到
pd.DataFrame
只是做
df_val_counts = pd.DataFrame(value_counts) # wrap pd.Series to pd.DataFrame
那么,你有一个
数据文件
列名称为的
'a'
,您的第一列将成为索引
Input: print(df_value_counts.index.values)
Output: [2 1]
Input: print(df_value_counts.columns)
Output: Index(['a'], dtype='object')
步骤2
现在怎么办?
如果要在此处添加新的列名,作为
数据文件
,您可以通过
reset_index()
.
然后,通过api列表更改列名
df.coloumns
df_value_counts = df_value_counts.reset_index()
df_value_counts.columns = ['unique_values', 'counts']
那么,你得到了你需要的
Output:
unique_values counts
0 2 3
1 1 2
完整答案在这里
import pandas as pd
df = pd.DataFrame({'a':[1, 1, 2, 2, 2]})
value_counts = df['a'].value_counts(dropna=True, sort=True)
# solution here
df_val_counts = pd.DataFrame(value_counts)
df_value_counts = df_value_counts.reset_index()
df_value_counts.columns = ['unique_values', 'counts'] # change column names