在单一数据框架中合并重复数据

2024-04-19 10:01:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我在用熊猫图书馆

我有一个大型数据库,其中有数百个数据部分重复(一列或两列相同,但其中一列包含附加信息)。 我希望合并重复的实例,同时保留包含最多信息的行。我只能找出如何合并两个数据库,而不是单个数据库中的数据。你知道吗

示例:

Col 1: Name, Col 2: Age, Col 3: Other, Col 4: Other, Col 5: Other

Row1   Aaron Miser, 32, Plumber, 4 Children, NaN
Row2   Aaron Miser, 32, NaN, NaN, NaN        
Row3   Aaron Miser, 32, NaN, NaN, NaN, likes football  

我需要识别第1列的重复项(在本例中是Aaron Miser),然后合并重复实例,这样合并的行现在就有了最多可用于重复实例的数据。因此只有一个保留行,它现在显示所有可用信息:

亚伦·米瑟,32岁,水管工,4个孩子,喜欢足球


Tags: 数据实例name信息数据库示例age图书馆
1条回答
网友
1楼 · 发布于 2024-04-19 10:01:08

这应该做到:

df.groupby('Name').apply(lambda series: series.fillna(method='ffill').fillna(method='bfill'))

如果要删除重复项并重置索引,请在其后添加.drop_duplicates().reset_index(drop=True)。你知道吗

注意:这假设Name列提供了唯一的键,并且没有包含冲突信息的行。你知道吗

相关问题 更多 >