【发布时间】:2021-11-05 17:37:50
【问题描述】:
我有以下数据框:
>>> df.head()
id date seizure_type note date_column
0 4 2021-10-01 16:35:00 Mild None 2021-10-01
1 5 2021-10-02 16:45:00 Medium Wet 2021-10-02
2 6 2021-10-02 22:55:00 Medium None 2021-10-02
3 7 2021-10-03 08:30:00 Strong None 2021-10-03
4 8 2021-10-06 19:30:00 Strong Been brewing all day 2021-10-06
我正在尝试计算每天每种癫痫发作类型的值,并使用此数据创建一个新列。以下产生了我需要的东西:
data = df.groupby(['date_column'])['seizure_type'].count()
date_column
2021-10-01 1
2021-10-02 2
2021-10-03 1
2021-10-06 1
2021-10-07 1
但我不知道如何将此数据作为新列添加到现有数据框中。
我尝试像这样添加列:
df['freq'] = data
但 freq 列不起作用并产生以下内容:
id date seizure_type note date_column freq
0 4 2021-10-01 16:35:00 Mild 2021-10-01 NaN
1 5 2021-10-02 16:45:00 Medium Wet 2021-10-02 NaN
2 6 2021-10-02 22:55:00 Medium 2021-10-02 NaN
3 7 2021-10-03 08:30:00 Strong 2021-10-03 NaN
4 8 2021-10-06 19:30:00 Strong Been brewing all day 2021-10-06 NaN
我觉得答案正盯着我的脸,但我看不到它。
【问题讨论】:
-
你能给出你想要的模型吗?将每日统计数据与每个单独的事件联系起来似乎很奇怪。
标签: python pandas pandas-groupby