簡體   English   中英

如果Nan,熊貓會將列值移動到同一列的第一行

[英]Pandas move column values to first row within same column if Nan

我如何從這個df轉到

     c0   c1   c2   c3 
0  5.99  NaN  NaN  NaN  
1   NaN   12  NaN  NaN                
2   NaN  NaN   44  NaN               
3   NaN  NaN  NaN   49

為此df

     c0   c1   c2   c3 
0  5.99   12   44   49  

那是,

  • 將所有非NaN值移到第一行
  • 將所有值保留在原始列中

每列只有1個非NaN值。

使用bfillaxis=0downcast='infer' + dropna

df = df.bfill(axis=0, downcast='infer').dropna()

print(df)
     c0  c1  c2  c3
0  5.99  12  44  49

如果不使用downcast='infer'您將獲得所有float數據類型:

print(df.bfill(0).dropna())
     c0    c1    c2    c3
0  5.99  12.0  44.0  49.0

暫無
暫無

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

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