如何在Jupyter Notebook中提取含日期列的完整百分比值?
解决方法
你的问题出在正则表达式仅匹配了单个数字,未覆盖完整的百分比范围格式。可以用以下代码实现需求:
基础版(匹配整数百分比范围,如90-100%)
import re data5['imd_band'] = data5['imd_band'].str.extract(r'(\d+-\d+%)', expand=False)
进阶版(支持带小数的百分比范围,如85.5-92.3%)
import re data5['imd_band'] = data5['imd_band'].str.extract(r'(\d+(?:\.\d+)?-\d+(?:\.\d+)?%)', expand=False)
说明
- 正则表达式专门匹配「数字-数字%」的完整结构,能直接提取出整个百分比范围
- Pandas的
str.extract方法比apply+lambda更简洁高效 - 若某行无符合格式的百分比,结果会返回
NaN,和你原代码的None效果一致
内容的提问来源于stack exchange,提问作者Maryoluwakemi
相关产品推荐
相关产品推荐

