假設我有一個如下資料框:
Patient_ID Age Weight
1 27 145
2 NaN 216
3 NaN 107
4 51 156
5 NaN 201
我也有這個陣列:
array([26,64,71])
我想要的是資料框:
Patient_ID Age Weight Age_Predicted
1 27 145 False
2 26 216 True
3 64 107 True
4 51 156 False
5 71 201 True
我不知道該怎么做。
我嘗試了一個串列理解:
df.loc[df[‘Age’].isna(), ‘imputed’] = True
但是,這不會將值插入到 Age 列的先前空值中,并且 False 值讀取為 null 而不是 False。
我曾嘗試閱讀類似的問題,但找不到任何相關的內容。制作兩個新列會更容易嗎,一個是估算的年齡,一個是布爾標記?我該怎么做?任何幫助,將不勝感激。
uj5u.com熱心網友回復:
讓我們做isna和分配
df['Age_Predicted'] = df['Age'].isna()
df.loc[df['Age_Predicted'],'Age'] = a
df
Out[323]:
Patient_ID Age Weight Age_Predicted
0 1 27.0 145 False
1 2 26.0 216 True
2 3 64.0 107 True
3 4 51.0 156 False
4 5 71.0 201 True
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/464378.html
