簡體   English   中英

如何用另一行中的值替換NaN?

[英]How do I replace NaNs with the values from another row?

我有一些包含NaN的行的df。 我想用該行最相似的行的各個變量值來估算它們。 我用所有具有NaN的行創建了df的子集,並創建了一個列表,該列表的索引與該子集中的行最相似。 我現在有了缺少值的行的ID,以及與該行最相似的行的ID。

假設這是我的df:


    ID  A   B   C
    01  10  20  40.0
    02  12  19  43.0
    03  10  NaN NaN

我想要的是用其他某行的值替換NaN。 預期結果:


    ID  A   B   C
    01  10  20  40.0
    02  12  19  43.0
    03  10  20  40.0

這似乎並不能解決問題:


    df.loc[df['ID'] == 03]['B'] = df.loc[df['ID'] == 01]['B']

理想情況下,我只用另一行中的值填充行中的所有NaN。

您可以用列或行fillna

df.fillna(df.iloc[0])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM