Cabin列の行をPclass列の値1に従って選択します。次に、Cabin列の選択した行の値を1に置き換えます。
私は次のコードを実行しましたが、キャビン列のすべての値を1に置き換えます。NaN値は1に置き換えられます。選択した行のみを置き換えるにはどうすればよいですか?
train['Cabin'] =train[train['Pclass']==1]['Cabin']=1
loc
で列Cabin
の条件行を選択し、スカラーに設定できます。
train.loc[train['Pclass'] == 1, 'Cabin'] = 1
そして、コードはと同じなので、すべての値を1
に置き換えます。
train['Cabin'] = 1
サンプル:
train = pd.DataFrame({'Pclass':[1,2,3,1,2],
'Cabin':[10,20,30,40,50]})
print (train)
Cabin Pclass
0 10 1
1 20 2
2 30 3
3 40 1
4 50 2
train.loc[train['Pclass'] == 1, 'Cabin'] = 1
print (train)
Cabin Pclass
0 1 1
1 20 2
2 30 3
3 1 1
4 50 2