pri*_*e90 4 python datetime python-3.x pandas-groupby
我已经搜索了 stackoverflow 以了解如何按月对 DateTime 进行分组,并且由于某种原因,即使在我通过数据帧之后,我仍然收到此错误 pd.to.datetime
类型错误:仅对 DatetimeIndex、TimedeltaIndex 或 PeriodIndex 有效,但获得了“Int64Index”的实例
df['Date'] = pd.to_datetime(df['Date'])
df['Date'].groupby(pd.Grouper(freq='M'))
Run Code Online (Sandbox Code Playgroud)
当我为df['Date']它提取数据类型时,它显示dtype: datetime64[ns]Any,为什么我不断收到此错误的想法?
原因很简单:您没有将 groupby 键传递给groupby.
您想要的是按 .csv 内容的月份值对整个数据框进行分组df['Date']。
然而,df['Date'].groupby(pd.Grouper(freq='M'))实际做的是首先pd.Series从 DataFrame 的Date列中提取 a 。然后,它尝试对那个Series执行 groupby ;没有指定的键,它默认尝试按索引分组,这当然是数字。
这将起作用:
df.groupby(pd.Grouper(key='Date', freq='M'))
| 归档时间: |
|
| 查看次数: |
4442 次 |
| 最近记录: |