以下是iam使用的数据帧的示例。在这里,可以用homezip替换ED值。
EmpZipCode homeZip
839E2 839E2
ED A83C3
ED 938B4
ED B82E2
893D9 893D9
我在这里尝试用homezip替换unk值,使之脱下第一个 字母(如果存在)将保留所有值。期望如下:
EmpZipCode homeZip
839E2 839E2
83C3 A83C3
938B4 938B4
82E2 B82E2
893D9 893D9
答案 0 :(得分:3)
我们这里需要两个np.where
,第一个是删除家庭邮编的Alpha,第二个是用先前的输出替换ED
s = np.where(df.homeZip.str[0].str.isalpha(),df.homeZip.str[1:], df.homeZip)
df['EmpZipCode'] = np.where(df['EmpZipCode'].eq('ED'), s , df.EmpZipCode)
df
Out[23]:
EmpZipCode homeZip
0 839E2 839E2
1 83C3 A83C3
2 938B4 938B4
3 82E2 B82E2
4 893D9 893D9