使用同一列中的值填充 Pandas 数据帧中的空值,这些值在另一列中具有匹配的值



我有一个数据帧,该帧在给定列中具有空值,在同一索引中,还有另一列具有重复的非空值。我试图弄清楚的是使用 Pandas 本机函数使用 ID 列作为参考来填充这些空值的正确方法是什么。

谢谢你的帮助。

源语言:

Company ID
AAA 100
BBB 200
CCC 150
**NULL  100
FFF 375
**NULL  150

格式 化:

AAA 100
BBB 200
CCC 150
**AAA   100
FFF 375
**CCC   150

你可以试试:

df['Company'] = df.groupby('ID')['Company'].transform('first')

如前所述,上述内容将取代所有Company,而不仅仅是那些nan.因此,如果您有多个CompanyID,则可能会给出错误的结果。相反,您可以执行以下操作:

df['Company'] = df['Company'].fillna(df.groupby('ID')['Company'].transform('first'))

最新更新