Python:计算每个月在多个列中出现的字符串的数量
我有一个熊猫数据框,看起来像下面的“created_at”包含日期时间值Python:计算每个月在多个列中出现的字符串的数量,python,pandas,Python,Pandas,我有一个熊猫数据框,看起来像下面的“created_at”包含日期时间值 Id created_at issue_type product_version 123 2017-01-01 14:00:00 product failure version_a 124 2017-02-01 13:40:00 ID10t version_c 125 2017-02-20 01:40:00 PEBCAK
Id created_at issue_type product_version
123 2017-01-01 14:00:00 product failure version_a
124 2017-02-01 13:40:00 ID10t version_c
125 2017-02-20 01:40:00 PEBCAK version_c
我需要能够记录每个月出现的问题类型和产品版本
因此,结果应该如下所示:
month issue_type count product_version count
Jan product failure 1 version_a 1
Feb ID10t 1 version_c 2
PEBCAK 1
更新:
这让我走到了这一步:
df.groupby(pd.Grouper(key='created_at', freq='M' ['issue_type'].value_counts()
沿着这些路线前进:
df.groupby([df.created_at.dt.month,'product_version']).count()['Id'].reset_index(1)
# product_version Id
#created_at
#1 version_a 1
#2 version_c 2
您将得到两个数据帧(一个用于版本,一个用于问题)。如有必要,您可以稍后重新组合它们