ids = [1,1,1]
value1 = ['c', np.nan, np.nan]
value2 = [np.nan, 'd', 'a']
value3 = [np.nan, np.nan, np.nan]
value4 = ['these', 'dont', 'matter']
df = pd.DataFrame({'id':ids, 'value1':value1, 'value2':value2, 'value3':value3,
'value4':value4})
id value1 value2 value3 value4
0 1 c NaN NaN these
1 1 NaN d NaN dont
2 1 NaN a NaN matter
我想根据id将这3行合并为一行,如下所示
id value1 value2 value3
0 1 c d NaN
对于这种情况,如果两行在其中一列中有不同的值,则不重要,我将取其中一个值。(假设第一个,如value2的示例)
如果在任何行中都没有列的值,我希望它是np.nan
谢谢
尝试使用以下方法:
如果您希望取最后一个值,可以使用:
相关问题 更多 >
编程相关推荐