我正在尝试使用 pandas TimeGrouper 创建一些日期的频率表,但是它返回错误
Posted
技术标签:
【中文标题】我正在尝试使用 pandas TimeGrouper 创建一些日期的频率表,但是它返回错误【英文标题】:I'm trying to create a frequency table of some dates with pandas TimeGrouper however it returns error 【发布时间】:2019-09-15 03:05:12 【问题描述】:我正在尝试通过 pandas TimeGrouper 从某些日期创建频率表,但收到以下错误
输入:
t = pd.to_datetime(t)
t = pd.Series(t)
t
输出:
0 2019-04-10 10:49:00
1 2019-04-10 10:49:00
2 2019-04-10 10:49:00
3 2019-04-10 10:49:00
4 2019-04-10 10:49:00
5 2019-04-10 10:48:00
6 2019-04-10 10:48:00
7 2019-04-10 10:48:00
8 2019-04-10 10:48:00
9 2019-04-10 10:48:00
Name: tweet.created_at, dtype: datetime64[ns]
输入:
t.groupby(pd.core.resample.TimeGrouper('H').count().plot(kind='bar'))
输出:
Error: Only valid with DatetimeIndex, TimedeltaIndex or PeriodIndex, but got an instance of 'RangeIndex'
【问题讨论】:
'TimeGrouper' 已弃用。 ***.com/a/39186403/6361531 嗯。现在我浏览了你的链接并使用了这个: t.groupby(pd.Grouper(freq='H')).count().plot() 再次出现同样的错误 【参考方案1】:我用这个技巧来绕过:
t.reset_index().set_index(t.name).resample('H').count().plot()
【讨论】:
嗯。它返回以下错误:return self._engine.get_loc(key)。关键错误:1 对不起,那是因为t
有不同的名字,试试set_index('tweet.created_at')
而不是set_index(1)
。
或更一般的set_index(t.name)
。
1.我和中国没有任何关系。 2.如果可行,请考虑投票并接受答案:-)。
1.越南万岁* 2. 当然,兄弟。我投了但是因为我的等级还不高,网站说我的票会考虑但不显示。再次感谢!以上是关于我正在尝试使用 pandas TimeGrouper 创建一些日期的频率表,但是它返回错误的主要内容,如果未能解决你的问题,请参考以下文章
由于额外的列值,尝试使用 pandas Python 读取 csv 时出错