使用 Pandas 在 Python 中旋转数据

Pivoting data in Python using Pandas

我正在进行时间序列分析。我有 运行 下面的代码在数据框中生成随机年份,因为原始年份没有年份值:

wc['Random_date'] = wc.Monthdate.apply(lambda val: f'{val} {randint(2019,2022)}') 
#Generating random year from 2019 to 2022 to create ideal conditions  

现在我有一个如下所示的数据框:

wc.head()

ID 列是当前的索引,我想生成一个透视数据框,如下所示:

Random_date Count_of_ID
Jul 3 2019 2
Jul 4 2019 3

我知道在我旋转数据后需要进行聚合,但以下代码不起作用:

abscount = wc.pivot(index= 'Random_date', columns= 'Random_date', values= 'ID')

这是我看到的错误的结尾部分:

请帮忙。谢谢。

您可以查看

df['Random_date'].value_counts()

如果需要唯一计数

df.reset_index().drop_duplicates('ID')['Random_date'].value_counts()

或者

df.reset_index().groupby('Random_date')['ID'].nunique()