作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在数据框中有一列,在某些行中我有州,有时只有城市。例如,在某些行中我只有:'Los Angeles',但在其他行中我可能有'CA Los Angeles'。
我想将该列拆分为两个新列:州和城市,如果未指定州,则可以留空。像这样:
我在想也许可以使用像'[A-Z][A-Z]\s' 之类的正则表达式来拆分,但我无法让它工作。有什么想法吗?
最佳答案
你可以使用
^(?:([A-Z]{2})\s+)?(.*)
参见 regex demo .详情:
^
- 字符串的开始(?:([A-Z]{2})\s+)?
- 可选出现
([A-Z]{2})
- 第 1 组:两个大写 ASCII 字母\s+
- 一个或多个空格(.*)
- 第 2 组:除换行符以外的任何零个或多个字符,尽可能多。如果您使用的是 Pandas,请使用
df[['STATE','CITY']] = df['COLUMN'].str.extract(r'^(?:([A-Z]{2})\s+)?(.*)', expand=False)
关于python - 拆分列正则表达式数据框 python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65265291/
我是一名优秀的程序员,十分优秀!