我有一条称为“ labelled_data”的tweet熊猫数据帧,其中包括“ tweep_username”,“ tweetcreated_at”(时间)和“ label”
我想按“ tweep_username”和“ tweetcreated_at”(按星期)将它们分组,然后取“ labels”的平均值。然后,我想采用这些获得的平均值,然后按“ tweetcreated_at”(按周)将它们分组,然后从中绘制出连续的频率分布。
这意味着我希望每周在第一部分中获得的“标签”均具有独立的频率分布
我尝试了以下代码:
labelled_data['tweetcreated_at'] = pd.to_datetime(labelled_data['tweetcreated_at'], errors='coerce')
s=labelled_data.groupby(['tweep_username',pd.Grouper(key='tweetcreated_at', freq='W')])['label'].mean()..set_index('tweetcreated_at').resample('W')
plt.hist(s)
plt.show()
并收到以下错误:
“系列”对象没有属性“ toordinal”
答案 0 :(得分:1)
也许您可以尝试以下方法:
labelled_data['tweetcreated_at'] = pd.to_datetime(labelled_data['tweetcreated_at'],
errors='coerce')
labelled_data = labelled_data.set_index('tweetcreated_at')
s = labelled_data.groupby(['tweep_username','tweetcreated_at']).label.resample('W').mean()
plt.hist(s)
plt.show()
答案 1 :(得分:0)
我这样解决了:
labelled_data.groupby(['tweep_username',pd.Grouper(key='tweetcreated_at', freq='W')])['label'].mean().reset_index().groupby('tweetcreated_at')['label'].plot(kind='density', legend=True)