回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我有一个示例数据框,如下所示</p>
<pre><code>import pandas as pd
import numpy as np
NaN = np.nan
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':[NaN,'Pos',NaN,'Neg',NaN,NaN,NaN,NaN,'Pos', NaN,
NaN,NaN,'Negative',NaN,NaN,NaN,'Positive'],
'CloseContact': [NaN, 'True', NaN, NaN, 'False',NaN, NaN, 'False', 'True',
NaN, NaN, 'False', NaN, 'True','True','False', NaN ]}
df1 = pd.DataFrame(data)
df1
</code></pre>
<p>现在,必须创建两列CC1和CC2。对于每个ID,对于每个星期(重要),CC1将获得“CloseContact”列的第一个非空值,CC2将获得“CloseContact”列的第二个非空值</p>
<p>最终的数据帧应该如下图所示</p>
<p><a href="https://i.stack.imgur.com/GSBMt.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/GSBMt.png" alt="enter image description here"/></a></p>
<p>非常感谢您的帮助。多谢各位</p>