使用tabulizer提取PDF表格后:替换列名并将原表头转为数据行
调整tabulizer提取表格的表头与数据行
R语言解决方案
假设从PDF提取后的表格已存储为数据框raw_df,初始结构如下:
| A | King | Blue |
|---|---|---|
| D | Queen | Red |
| T | Prince | Black |
步骤1:将原表头转为数据行
提取原列名作为新行插入到数据框开头:
# 提取原表头并转为数据行 header_row <- data.frame(t(colnames(raw_df))) colnames(header_row) <- colnames(raw_df) # 合并新行与原数据 adjusted_df <- rbind(header_row, raw_df)
步骤2:设置目标列名
替换数据框的列名为指定的实际名称:
colnames(adjusted_df) <- c("letter", "rank", "colour")
最终效果
处理后的数据框结构如下:
| letter | rank | colour |
|---|---|---|
| A | King | Blue |
| D | Queen | Red |
| T | Prince | Black |
简洁链式写法(依赖dplyr)
如果习惯使用dplyr的管道语法,可一行完成调整:
library(dplyr) adjusted_df <- raw_df %>% add_row(!!!set_names(colnames(.), colnames(.)), .before = 1) %>% rename(letter = 1, rank = 2, colour = 3)
内容的提问来源于stack exchange,提问作者prayner
相关产品推荐
相关产品推荐

