首页 > 解决方案 > 在 Pandas 的索引中合并几乎重复的字符串行?

问题描述

我有一个数据集,每条记录有 2 个副本。每条记录都有一个 ID,每个副本都有相同的 ID。

两个记录副本中的 18 个字段中有 15 个是相同的。但在 3 个字段中,顶行包含 2 个项目和 1 个 NAN;底行包含 1 个项目(顶行有一个 NAN)和 2 个 NAN(顶行有项目)。有时会有不遵循这种模式的随机 NAN。

我需要将每条记录折叠成一条记录,这样我就有一个包含所有 3 个非 NAN 字段的记录。

我尝试过各种版本的groupby. 但这省略了我需要的 3 个字段,它们都是基于字符串的。它使某些数字字段的值加倍。

如果一切都失败了,我会将字母字段转换为数字代码和 df.groupby(['ID']).agg('sum')

但我认为可能有更聪明的方法来做到这一点。

标签: pythonpandas

解决方案


推荐阅读