熊猫结合多列值

时间:2019-12-23 07:19:53

标签: python pandas

我有一组调查数据,其中包含> 100列,其中大多数是重复的列名,具有不同的值

enter image description here

我的目标是创建一个代码来自动对具有相同列名的所有列进行分组,无论我的文件中有多少列(如下例所示):

enter image description here

我尝试过填充,但是如果列名不同,我无法找到一种方法来确保填充停止 有人可以教我如何做吗?

谢谢 最好的祝福 莱莉·沙里尔

1 个答案:

答案 0 :(得分:1)

如果每个组可能有多个值,并且仅需要最后一个非错误值,请使用:

想法是按重复的列名称进行分组,向前填充缺失值并在lambda函数中按组选择最后一列:

df = df.groupby(level=0, axis=1).apply(lambda x: x.ffill(axis=1).iloc[:, -1])

如果每个组中只有一个不丢失的行并且需要最后一个:

df = df.groupby(level=0, axis=1).last()