python - Python:删除第一个字母之前的所有字符
问题描述
您好,我有一个数据框,其中有一列包含在某些国家/地区名称前面带有区号的字符串。
我想删除第一个字母之前的所有字符(如果存在)以获得仅包含国家名称的列。
示例:
1-United States
44-United Kingdom
Mauritius
61-Australia
Cambodia
Colombia
86-China
852-Hong Kong
Romania
46-Sweden
期望的输出:
United States
United Kingdom
Mauritius
Australia
Cambodia
Colombia
China
Hong Kong
Romania
Sweden
提前致谢!我很感激对此的任何意见!
解决方案
试试这个:
df['col'] = df['col'].apply(lambda s: ''.join([i for i in s if i.isalpha()]))
要使用正则表达式:
df['col'] = df['col'].str.replace('[^a-zA-Z ]', '')
推荐阅读
- c - char a[50][50] 在 C 中是什么意思?
- java - 按字段排序对象列表,如果为空,则按另一个字段
- c# - 全新安装时缺少 MonoDevelop 的系统命名空间
- ios - 从移动 SIM 网络获取日期和时间
- html - 闪亮表格的下拉菜单
- node.js - Service Worker 无法离线获取资产
- machine-learning - 在执行语义分割任务时,我应该减去图像均值吗?为什么或者为什么不?
- twitter-bootstrap-3 - “页面”对象没有属性“site_id”
- jupyter-notebook - Jupyter Notebook:我无法将值解析为变量并根据该值从命令提示符生成另一个笔记本
- c# - 如何操作来自字典的选择列表的值?