【发布时间】:2021-11-25 23:49:18
【问题描述】:
我有一个示例数据框,如下所示。
import pandas as pd
data = {'ID':['A','A','A','A','A','A','A','A','A','C','C','C','C','C','C','C','C'],
'Week': ['Week1','Week1','Week1','Week1','Week2','Week2','Week2','Week2','Week3',
'Week1','Week1','Week1','Week1','Week2','Week2','Week2','Week2'],
'Risk':['High','','','','','','','','','High','','','','','','',''],
'Testing':['','Pos','','Neg','','','','','Pos', '', '','','Neg','','','','Pos'],
'Week1_adher':['','','','','','','','','', '','','','','','','',''],
'Week2_adher':['','','','','','','','','','','','','','','','',''],
'Week3_adher':['','','','','','','','','','','','','','','','','']}
df1 = pd.DataFrame(data)
df1
现在我想计算每个参与者每周的依从性。其计算如下: 如果参与者在一周内的测试栏中有 2 个或更多条目(正面/负面),则该周的坚持为“是”,否则为“否”
例如,对于参与者 A,第 1 周_adherence 为“是”,因为它在第 1 周的测试列中有 2 个条目。 Week2_adherence 为“否”
并且我希望将整周的依从性结果显示在每个参与者的第一行。
最终的数据框应该如下图所示。
我已经坚持了很长一段时间了。任何帮助是极大的赞赏。谢谢。
【问题讨论】:
标签: python-3.x pandas dataframe data-science data-processing