如何解决如何基于另一列中的值将值移到新列中
我有一组患者观察值(Obs)(例如血压,心率,呼吸频率等)(这并不详尽,可以更改为I,需要通过从Obs中提取唯一值来生成此列表列)。
当前每行数据代表一个值,该值对应于应该进行记录的时间点,进行记录的时间以及患者就诊ID。
我想重新排列,以使每个时间点对每个患者进行的所有观察(原始Obs列的唯一值)显示在一行上。有时在某个时间点对观察取两个值-在这种情况下我想在后面取一个值。有时在那个时间点不记录观察值,在这种情况下返回NaN(或其他Null值)。
如果数据文件的容量达到22GB,则将尽可能地高效!
样本数据
Index,VisitID,Obs,Obs_DTM,Entered_DTM,Value
0,33,BP,2018-11-06 20:30:00,2018-11-06 20:31:08,120
1,HR,2018-11-06 20:31:12,98
2,SPO2,2018-11-06 20:31:14,99
3,RR,2018-11-06 20:31:10,104
4,2018-11-06 20:32:00,22
5,2018-07-23 21:28:00,2018-07-23 21:32:10,20
6,2018-07-23 21:32:15,102
7,34,2018-07-25 20:32:00,2018-07-25 21:42:07,98
8,GCS,2018-07-25 21:42:10,12
9,2018-07-25 21:41:58,99
10,SpO2,2018-07-25 21:42:15,89
11,2018-07-25 21:42:12,13
12,2018-07-25 22:54:00,2018-07-25 22:52:00,14
返回
Index,BP_Value,BP_DTM,HR_Value,HR_DTM,SPO2_Value,SPO2_DTM,RR_Value,RR_DTM,GCS_Value,GCS_DTM
0,120,98,99,22,NaN,NaN
1,102,20,NaN
2,89,13,12
3,14,2018-07-25 22:52:00
预先感谢您的帮助。
解决方法
我们可以做到:
Ctrl+Shift+A
#only if index is a columns
#df = df.set_index('Index')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。