如何在Jupyter Notebook中提取DataFrame PatientID列纯数字内容
Jupyter Notebook 中提取Excel列纯数字的实现方法
依赖准备
首先在Jupyter单元格运行以下命令安装所需库(已安装可跳过):
!pip install pandas openpyxl
pandas:用于表格数据的读写、处理openpyxl:pandas读取xlsx格式Excel的依赖库
具体实现代码
逐单元格运行以下代码即可,注意替换文件路径为你本地的实际路径:
# 导入依赖 import pandas as pd import re # 1. 读取Excel文件,替换为你的文件路径、对应工作表名 df = pd.read_excel("你的数据文件.xlsx", sheet_name="你的工作表名") # 2. 定义数字提取逻辑:匹配字符串中所有数字片段并拼接 def get_pure_num(content): return ''.join(re.findall(r"\d+", str(content))) # 3. 替换PatientID列原有值 df["PatientID"] = df["PatientID"].apply(get_pure_num)
结果验证与导出
查看处理效果
运行以下代码即可输出处理后的PatientID列,和你给出的目标效果完全一致:
# 只查看PatientID列的处理结果 print(df["PatientID"])
处理效果对照:
| 原始PatientID值 | 处理后值 |
|---|---|
| abc12312 | 12312 |
| adb12312 | 12312 |
| adfad12312 | 12312 |
| sfa123124 | 123124 |
| asd1241123 | 1241123 |
| adsf13123 | 13123 |
该逻辑自动兼容空值、数字类型单元格,不会因为个别单元格格式异常报错
导出处理后的数据
如果需要把处理完的表格存为新的Excel文件,运行以下代码即可:
# index=False 表示不导出pandas自动生成的行索引列 df.to_excel("处理完成的患者数据.xlsx", index=False)
内容的提问来源于stack exchange,提问作者Abinand Rejimon
相关产品推荐
相关产品推荐

