You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将PDF中的Amtrak车站客流及地址数据解析为Pandas DataFrame

Amtrak车站客流PDF解析为指定格式DataFrame

你已经完成了PDF的下载和文本提取,接下来可以通过正则匹配解析文本,最终生成目标格式的Pandas DataFrame,具体实现如下:

解析步骤与代码

  1. 引入正则模块,编写解析函数匹配年度客流和地址
  2. 将匹配结果组装成DataFrame并调整列顺序
import re
import pandas as pd

def parse_pdf_text(pdf_text):
    # 匹配2016-2022年的客流数据
    year_flow_matches = re.findall(r'(2016|2017|2018|2019|2020|2021|2022)\s+(\d+)', pdf_text)
    flow_dict = {year: int(passenger_num) for year, passenger_num in year_flow_matches}
    
    # 匹配地址(匹配以数字开头、以xxxx-xxxx格式邮编结尾的地址内容)
    address_match = re.search(r'\d+.*?\d{5}-\d{4}', pdf_text)
    address = address_match.group().strip() if address_match else None
    
    # 构建DataFrame并调整列顺序
    df = pd.DataFrame([flow_dict])
    df['Address'] = address
    df = df[['2016', '2017', '2018', '2019', '2020', '2021', '2022', 'Address']]
    return df

# 调用解析函数生成DataFrame
result_df = parse_pdf_text(pdf_text)
print(result_df)

注意事项

  • 如果其他车站的PDF文本格式有差异(比如年份与客流数字的分隔符、地址排版不同),需要针对性调整正则表达式的匹配规则
  • 若PDF中存在多组年份数据,需添加逻辑过滤出目标年份的客流数据

内容的提问来源于stack exchange,提问作者user2813606

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 22:01:03