How to remove nan value while combining two column in Panda Data frame?

前端 未结 3 1695
萌比男神i
萌比男神i 2020-11-30 03:59

I am trying but not able to remove nan while combining two columns of a DataFrame.

Data is like:

feedback_id                        


        
相关标签:
3条回答
  • 2020-11-30 04:17

    For an in-place solution, you can use pd.Series.update with pd.DataFrame.pop:

    df['feedback_id'].update(df.pop('_id'))
    
    print(df)
    
                    feedback_id
    0  568a8c25cac4991645c287ac
    1  568df45b177e30c6487d3603
    2  568df434832b090048f34974
    3  568cd22e9e82dfc166d7dff1
    4  568df3f0832b090048f34711
    5  568e5a38b4a797c664143dda
    
    0 讨论(0)
  • 2020-11-30 04:29

    You can use combine_first or fillna:

    print df['feedback_id'].combine_first(df['_id'])
    0    568a8c25cac4991645c287ac
    1    568df45b177e30c6487d3603
    2    568df434832b090048f34974
    3    568cd22e9e82dfc166d7dff1
    4    568df3f0832b090048f34711
    5    568e5a38b4a797c664143dda
    Name: feedback_id, dtype: object
    
    print df['feedback_id'].fillna(df['_id'])
    0    568a8c25cac4991645c287ac
    1    568df45b177e30c6487d3603
    2    568df434832b090048f34974
    3    568cd22e9e82dfc166d7dff1
    4    568df3f0832b090048f34711
    5    568e5a38b4a797c664143dda
    Name: feedback_id, dtype: object
    
    0 讨论(0)
  • 2020-11-30 04:30

    If you want a solution that doesn't require referencing df twice or any of its columns explicitly:

    df.bfill(axis=1).iloc[:, 0]
    

    With two columns, this will copy non-null values from the right column into the left, then select the left column.

    0 讨论(0)
提交回复
热议问题