我正在学习Python,我认为从事一个项目可能是学习Python的最好方法。我有大约200000行数据,其中的数据显示了患者的药物列表。这是一个数据样本。你知道吗
PTID PTNAME MME DRNAME DRUGNAME SPLY STR QTY FACTOR
1 PATIENT, A 2700 DR, A OXYCODONE HCL 15 MG 30 15 120 1.5
1 PATIENT, A 2700 DR, B OXYCODONE HCL 15 MG 30 15 120 1.5
2 PATIENT, B 4050 DR, C MORPHINE SULFATE ER 15 MG 30 15 270 1
2 PATIENT, B 4050 DR, C MORPHINE SULFATE ER 15 MG 30 15 270 1
2 PATIENT, B 840 DR, A OXYCODONE-ACETAMINOPHE 10MG-32 14 10 56 1.5
2 PATIENT, B 1350 DR, C OXYCODONE-ACETAMINOPHE 5 MG-32 15 5 180 1.5
3 PATIENT, C 1350 DR, C OXYCODONE-ACETAMINOPHE 5 MG-32 15 5 180 1.5
3 PATIENT, C 1800 DR, D OXYCODONE-ACETAMINOPHE 10MG-32 30 10 120 1.5
我一直在思考这个问题,并尝试了很多方法,但没有一个代码产生任何结果或任何意义。老实说,我都不知道从哪里开始。一点点帮助将不胜感激。你知道吗
所以,我要做的是合并每个患者的数据,并计算每个患者的Total MME
。DRUGNAME
应该显示MME较高的数据帧。换句话说,每个患者的数据帧应该只有一行。你知道吗
我试过的一件事是
groupby_ptname = semp.groupby('PTNAME').apply(lambda x: x.MME.sum())
它显示了具有总MME的唯一患者名称,但我不知道如何在这个新的数据帧中添加其他变量。你知道吗
再来看看pandas groupby methods的文档。你知道吗
以下是一些对你有用的东西:
你可以这样做:
或使用
.reset_index()
:更新:使用
agg()
函数更有趣相关问题 更多 >
编程相关推荐