![](/img/trans.png)
[英]Calculate difference between successive date column with groupby on another column in pandas?
[英]Pandas associate or filter a date column between a range and groupby another column
我是 pandas 的新手,我正在尝试对我的 twitter 数据集执行一些 EDA。 数据集列
链接到数据集: https://www.kaggle.com/kaushiksuresh147/the-social-dilemma-tweets
Dataframe 样品:样品 dataframe
我想过滤在“2020-09-08 和 2020-09-22”之间创建的新用户(来自 user_created 列),然后将结果与情绪列分组。 我还想计算该新用户在该期间创建的推文总数,并将其与不在所选范围内的其他用户的推文总数进行比较(2020-09-08 和 2020-09-22) .
我尝试了一种方法,但我的代码不断给我错误消息: KeyError: 'user_created' code snippet
我也试过这段代码,它也给了我错误信息:KeyError: 'user_created' 2nd code
df['user_created'] = pd.to_datetime(df['user_created'])
start = '2020-09-08'
end = '2020-09-20'
df[(df['user_created'] >= start) & (df['user_created'] <= end)]
df[(df['user_created'] >= '2020-09-08') & (df['user_created'] <= '2020-09-22')]
grouped_df = df.groupby(['user_name', 'Sentiment','user_created']).size().reset_index(name="Count")
print(grouped_df.to_string(header=False))
我已经尝试使用 df.get(user_created) 来检索此列,但它似乎不起作用。
我认为start
和end
应该是日期时间格式( datetime.datetime
、 np.datetime64
或pd.Timestamp
),而不是字符串格式。
from datetime import datetime
start = datetime.strptime('2020-09-08', '%Y-%m-%d')
end = datetime.strptime('2020-09-20', '%Y-%m-%d')
df[(df['user_created'] >= start) & (df['user_created'] <= end)]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.