我如何找到每个患者在其治疗中的药物编码序列?



专家,即使每个病人来医院治疗的是同一种疾病,但根据他们的病情,治疗顺序也会略有不同。例:很少有病人比其他病人需要更多的护理前/预用药。在这里,我们的目标是如何收集所有的治疗序列并量化这些模式。请帮助我,如果你可以。我的熊猫知识不足以解决这个问题:-(

当前数据集:

df2 = pd.DataFrame({'patient: ['one', 'one', 'one', 'two','two', 'two','three','three', 'three'],    
'drug_code': ['011', '012', '013', '012', '013', '011','011', '012', '013'],        
'date': ['11/20/2022', '11/22/2022', '11/23/2022', '11/8/2022', '11/9/2022', '11/14/2022','11/8/2022', '11/9/2022', '11/14/2022']})
df2['date'] = pd.to_datetime(df2['date'])

结果数据集喜欢找到模式序列:

code_patterns = pd.DataFrame({'pattern':['011-012-013','012-013-011'],
'frequency': [2,1]})

尝试按patient进行分组,并将drug_code值串联成序列,然后求使用者中相同药物序列的计数:

drug_freq_df = df2.groupby(['patient']).apply(lambda x: '-'.join(x['drug_code']))
.value_counts().to_frame(name='frequency')
.rename_axis('pattern').reset_index()
print(drug_freq_df)

输出:

pattern  frequency
0  011-012-013          2
1  012-013-011          1 

最新更新