【发布时间】:2021-08-21 19:16:38
【问题描述】:
我有一个数据框,我想按年份分组,然后是每年的月份。由于数据非常庞大(从30年前记录到现在),我希望将输出如下所示以供后续计算,但后面没有任何聚合函数如“.mean()”。
但是,我无法这样做,因为 groupby 始终需要 .agg,否则它将显示此错误:
另一方面,我有点担心导入为系列,因为我不知道如何设置参数以获得与下面完全相同的格式。另一个原因是我使用以下几行将 .csv 导入数据框:
df=pd.read_csv(r'file directory', index_col = 'date')
df.index = pd.to_datetime(df.index)
由于一些奇怪的原因,如果我在 pd.read_csv 中定义要导入的日期字符串格式,然后尝试根据年份和月份、函数或方法按其他方法排序,当记录的日期开始时会混淆01(日)/01(月)/1990 年和 01(日)/02(月)/1990 年。比如将一月的第一个数字解释为日,第二个数字解释为月,并按时间顺序排序,但是到了二月,当日应该是01时,该方法认为01是月,02是日部分并将 2 月的记录移至 Jan 组。
有没有办法实现相同的格式?
下面帖子中显示的方法似乎无法帮助我获得我想要的格式:Pandas - Groupby dataframe store as dataframe without aggregating
【问题讨论】: