簡體   English   中英

將 nan 值水平填充到 dataframe

[英]Horizontally filling nan values into dataframe

我有一個大的 dataframe,數據設置如下:

df = [
[0, 1, 2, nan, nan, 5, nan, nan],
[nan, 1, 2, 3, nan, nan, 6, nan],
[nan, nan, 3, 4, nan, 6, nan, nan]
 ]

Expected Output: 
df=[
[0, 1, 2, nan, nan, nan, nan, nan], 
[nan, 1, 2, 3, nan, nan, nan, nan],
[nan, nan, 3, 4, nan, 6, nan, nan]
]

我試圖找出一個應用 function 按行刪除值並在出現數值時用 nan 替換它們,然后是 nan 值,基本上刪除數據中的 5 和 6 值。

謝謝!

很難理解你的意思,但如果你只是想用 nan 替換給定的值,你可以使用 np.where

df = pd.DataFrame(np.where(df==5, np.nan, df))

我通過遍歷列來解決這個問題(知道我以為我想做一個行循環,但這很有效)。 我通過查看所有先前的行來確定這一點,確定是否有一個 nan、一個數字、一個 nan,以及當前列是否是數字。

感謝所有的幫助!

暫無
暫無

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

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