繁体   English   中英

如何替换熊猫数据框中列的选定行的值?

[英]how to replace values of selected row of a column in panda's dataframe?

我有12列的火车数据集。 在此处输入图片说明

我想根据Pclass列的值1选择Cabin列的行,然后用1替换Cabin列的选定行的值。

我做了以下代码,但它用1替换了小屋列的所有值,甚至用1替换了NaN值。我如何只能替换所选的行?

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM