如何在R中对网页爬取的单列数据执行Pivot操作
单列爬取数据转结构化表格解决方案
输入示例
| 列 |
|---|
| Date |
| Number |
| Additional Number |
| 2022-08-10 |
| 2,4,5,6 |
| 7 |
| 2022-08-11 |
| 2,4,5,3 |
| 11 |
| 2022-08-12 |
| 2,4,5,8 |
| 14 |
理想输出
| Date | Number | Additional Number |
|---|---|---|
| 2022-08-10 | 2,4,5,6 | 7 |
| 2022-08-11 | 2,4,5,3 | 11 |
| 2022-08-12 | 2,4,5,8 | 14 |
解决方案(Python + Pandas)
这种场景核心是按固定行数分组重组数据:前3行是列名,后续每3行对应一条完整记录。以下是具体实现:
代码示例
import pandas as pd # 模拟爬取到的单列数据(实际替换为你的爬虫结果) raw_data = [ "Date", "Number", "Additional Number", "2022-08-10", "2,4,5,6", "7", "2022-08-11", "2,4,5,3", "11", "2022-08-12", "2,4,5,8", "14" ] # 提取列名(前3项) columns = raw_data[:3] # 拆分数据行:从第4项开始,每3个元素为一组 data_rows = [raw_data[i:i+3] for i in range(3, len(raw_data), 3)] # 构建结构化表格 structured_df = pd.DataFrame(data_rows, columns=columns) # 查看结果(可导出为CSV/Excel) print(structured_df)
关键逻辑说明
columns = raw_data[:3]:直接取前3个元素作为表格表头data_rows = [raw_data[i:i+3]...]:按每组3个元素拆分剩余数据,自动匹配对应列的内容- 生成的
structured_df可直接用于数据分析、格式导出等后续操作
若无需依赖Pandas,也可以用纯Python列表操作实现分组,但Pandas在结构化数据处理上更高效便捷。
内容的提问来源于stack exchange,提问作者Rshiny Learner
相关产品推荐
相关产品推荐

