我有一个数据集,需要在其中将一些字符串值替换为另一组字符串值。在这种情况下,我想将字符串“ 1 year”替换为“ 1”。我已经使用了代码-
loan_data['emp_length_int']=loan_data['emp_length'].str.replace("1 year","1")
,然后使用唯一功能检查值是否已更改但无济于事-
array(['10+ ', '0', '1 year', '3 ', '8 ', '9 ', '4 ', '5 ', '6 ','2 ', '7 ', nan], dtype=object)
我要去哪里错了?
答案 0 :(得分:0)
不清楚您使用的是什么数据集/数组。假设它是一个np.array;并且该loan_data ['emp_length_int']返回数组
array(['10+ ', '0', '1 year', '3 ', '8 ', '9 ', '4 ', '5 ', '6 ', '2 ', '7 ', nan], dtype=object)
for i in range(len(loan_data['emp_length_int'])):
loan_data['emp_length_int'][i] = loan_data['emp_length_int'][i].replace('1 year','1')
应该可以解决问题。
当且仅当loan_data ['emp_length'] ='1 year'时,您所做的只会将“ 1 year”替换为“ 1”
由于该数组是一个数组,因此无法在该数组上工作。不是字符串。 str.replace()仅对字符串执行此操作。请检查有关数组类型以及replace()函数的文档。