簡體   English   中英

為什么我無法根據另一列中的值替換 dataframe 的一列中的這些 NA 值? [Python]

[英]Why am I unable to replace these NA values in one column of my dataframe based on the values in another? [Python]

我有一個包含 2 列的數據框( df3 ): SUBSCRIBEWeeks3Meals

Subscribe是一個分類變量,可以取值( YN ), Weeks3Meals的類型是float 兩者都包含缺失值 ( NaN )。

原裝 Dataframe:

原始數據框

如果相應的Weeks3Meals單元格不是NA ,我想用Y替換所有在Subscribe中具有NA的單元格。

因此,例如,我想用Y替換第3行中SUBSCRIBENA值,因為Weeks3Meals單元格不是NA但有一個值; 見下圖:

Subcribe 中帶有 NA 但 'Weeks3Meals' 不是 NA 的行

這就是我試圖做的:

df3['SUBSCRIBE'][df3['Weeks3Meals'].notnull()].fillna('Y', inplace = True).

但是當我打印出數據框時, NA值不會被替換並且行保持不變:

運行代碼后的DF

我不確定為什么它不起作用。 我會很感激你的幫助。 謝謝你。

你能試試這個嗎?

df3.loc[(df3['Weeks3Meals'].notnull()) & (df3['SUBSCRIBE'].isnull()), 'SUBSCRIBE'] ='Y'

暫無
暫無

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

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