替换函数对熊猫过滤的数据帧无效,我该如何改进



train_data[(train_df['Survived']==1)&(train_df['Pclass']==1)&(train_df['Sex']=='female')]['Age'].replace(38,34.9, inplace=True)

当我使用这个代码时,DataFrame没有改变。我不明白为什么。

train_data.isnull().sum()该代码仍然在该过滤部分中压印NaN值。

通过首先使用一个小数组,然后按顺序追加它们,问题得到了改进。该解决方案具有索引问题;

我将为此代码编写def。

newage = pd.DataFrame([])
newage = pd.concat((newage,a),axis=0,ignore_index=False,sort=True)
newage = pd.concat((newage,b),axis=0,ignore_index=False,sort=True)
newage = pd.concat((newage,c),axis=0,ignore_index=False,sort=True)
newage = pd.concat((newage,d),axis=0,ignore_index=False,sort=True)
newage = pd.concat((newage,e),axis=0,ignore_index=False,sort=True)
newage = pd.concat((newage,f),axis=0,ignore_index=False,sort=True)
newage = pd.concat((newage,g),axis=0,ignore_index=False,sort=True)
newage = pd.concat((newage,h),axis=0,ignore_index=False,sort=True)
newage = pd.concat((newage,j),axis=0,ignore_index=False,sort=True)
newage = pd.concat((newage,k),axis=0,ignore_index=False,sort=True)
newage = pd.concat((newage,l),axis=0,ignore_index=False,sort=True)
newage = pd.concat((newage,m),axis=0,ignore_index=False,sort=True)
newage
train_data["newage"] = newage
train_data.head(15)```

最新更新