【发布时间】:2020-04-20 00:40:43
【问题描述】:
我的最终目标是用整洁(干净)的框架来整理桌子。
这是我捕获原始 pdf 页面的图像文件。 (对不起语言,因为我现在要离开韩国了)
当我在 R 包“tabulizer”中使用“extract_table”函数时, 结果是这样的
library(tabulizer)
setwd("C:/Users/user/Desktop/신규펀드/폴더/20200420/투자설명서")
pdf_file <- "K55101D20742_투자설명서_한국투자미국배당귀족증권자투자신탁UH(주식)_(20200322).pdf"
cle <- extract_tables(pdf_file,pages=47,method="stream", encoding="UTF-8")
cle
如您所见,框架并不整洁。因为有很多“”,而且功能分割并用线条制作框架!所以每一行都是分开的。我的意思是,如果您看到 [11,] [12,] [13,] 行,在 pdf 文件中它应该只是包含 (수수료선취-오프라인(A), 0.3500, 0.5100, 0.0300, 0.0100 , 0.9000, -, 0.9000, 1.8500, 0.9000)。但是,在 R 结果中,它被分成三行 [11,] [12,] [13,]。
所以我想解决这个问题,并使结果与 pdf 文件完全相同。
如果你知道任何关于它的答案,请留下任何回复来帮助我。
另外一个在捕获的图像中没有提到的问题是
如果包中有误读,则合并列或行。例如, 表中的第一个和第二个数字0.3500,0.5100应该分开。但是有时它只合并在一列中,0.35000.5100,就像那样。
我该如何解决?
感谢您的阅读。
++
dput(cle)
list(structure(c("수수료미징구-온라인-개인연금 (C-Pe)", "수수료미징구-오프라인-퇴직연금 (C-R)",
"수수료미징구-온라인-퇴직연금 (C-Re)", "수수료미징구-오프라인,직판-랩 (C-W)",
"", "수수료후취-온라인슈퍼 (S)", "", "수수료미징구-온라인슈퍼-개인연금 (S-P)",
"수수료미징구-온라인슈퍼-퇴직연금 (S-R)", "부과기준", "없음",
"없음", "없음", "없음", "", "없음", "", "없음", "없음", "매입시",
"없음", "없음", "없음", "없음", "3 년 미만 환매시", "환매금액의 0.15%",
"이내", "없음", "없음", "환매시", "없음", "없음", "없음", "없음",
"", "없음", "", "없음", "없음", "환매시"), .Dim = c(10L, 4L)),
structure(c("※ 이 투자신탁이 투자하는 모투자신탁의 수수료 현황",
"■ 한국투자 미국배당귀족 증권 모투자신탁(USD)(주식)", "구 분 부과비율 (또는 부과금액)",
"선취판매수수료 -", "후취판매수수료 -", "환매수수료 -", "",
"", "부과시기", "매입시", "환매시", "환매시"), .Dim = c(6L,
2L)), structure(c("", "", "", "", "구분", "", "", "", "",
"", "수수료선취", "-오프라인", "(A)", "수수료선취", "-온라인",
"(A-e)", "수수료선취", "", "-오프라인-", "", "", "집합",
"", "투자", "", "업자", "", "보수", "", "", "0.3500", "",
"", "0.3500", "", "", "0.3500", "", "", "", "", "판매", "",
"회사", "", "보수", "", "", "", "0.5100", "", "", "0.2550",
"", "", "0.3570", "", "", "", "", "신탁", "", "업자", "",
"보수", "", "", "", "0.0300", "", "", "0.0300", "", "", "0.0300",
"", "", "일반", "", "사무", "", "관리", "", "회사", "", "보수",
"", "0.0100", "", "", "0.0100", "", "", "0.0100", "", "부과비율 (연간, %)",
"", "", "", "기타", "총보수", "비용", "", "", "", "", "0.9000 -",
"", "", "0.6450 -", "", "", "0.7470 -", "", "", "", "", "",
"총보수", "", "<U+30FB>비용", "", "", "", "", "0.9000", "",
"", "0.6450", "", "", "0.7470", "", "", "", "(동종", "",
"유형총", "", "보수<U+30FB>", "", "비용)", "", "", "1.8500",
"", "", "1.3900", "", "", "-", "", "", "", "", "합성총",
"", "보수<U+30FB>", "", "비용", "", "", "", "0.9000", "",
"", "0.6450", "", "", "0.7470", "", "", "", "", "증권", "",
"거래", "", "비용", "", "", "", "-", "", "", "-", "", "",
"-", ""), .Dim = c(19L, 10L)))
>
【问题讨论】:
-
试试 cle1
-
感谢您的好评。我从未使用过的 noquote 函数(因为我不知道它)很棒。但我不明白你的意思:提供 cle 的 dput()。你的意思是我只是尝试那个功能并将结果写在评论上?
-
dput() 给出了数据的结构,这将帮助我们生成可重现的数据。