如何将值数组输入到值为 null 的数据框的列中,并创建一个新的布尔列来标记它?

How do I input an array of values into a column of a dataframe where the value is null and make a new boolean column that marks this?

假设我有一个数据框如下:

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。

我试过阅读类似的问题,但找不到任何相关的内容。制作两列新列会更容易吗,一列是估算的年龄,另一列是布尔标记?我该怎么做?任何帮助将不胜感激。

让我们做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