我有一个数据框 all_data,地址列的标题已粘贴在下面。all_data['Address'].head()0 Brocklebank Ground, Torver, LA21 8BS1 23 Leigh Street, Aspull, WN2 1QQ2 Dewsland, Ponthenry Road, Pontyates, SA15 5TY3 1 Croft Close, Wainfleet, PE24 4DT4 3 Landor Avenue, Killay, SA2 7BPName: Address, dtype: object我正在尝试仅提取邮政编码以将其放入新列中:all_data['Postcode'] = all_data['Address'].str.split(',')[-1]我收到以下错误消息:ValueError: Length of values does not match length of index我应该怎么做?
2 回答
翻过高山走不出你
TA贡献1875条经验 获得超3个赞
请注意,大多数向Series量化字符串操作必须在str访问器之前,在获取字符串切片时也是如此。因此,您str在 the 之后缺少 astr.split以便能够对列表进行切片。
df['Address'].str.split().str[-1]
0 8BS
1 1QQ
2 5TY
3 4DT
4 7BP
Name: Address, dtype: object
烙印99
TA贡献1829条经验 获得超13个赞
applymap()
当需要从每个元素中提取信息或应用功能更改时,最好使用它
postals = all_data['Address'].head().apply(lambda x: x.split()[-1])
添加回答
举报
0/150
提交
取消