formattable男なら誰しも一度は「俺に落とせない女はいない」、的なことを言ってみたいと思うわけですが、どうやらそんなセリフを言う機会がありそうもないので、「俺に落とせないデータはない」くらいにスケールダウンかつハッカー感を出していければと思います。いうわけでタイトルにある通り、日本語のPDFからテキストを抽出する方法です。テキストマイニングに特化した{tm}パッケージを使います。通常の{tm}の挙動を見てから、日本語PDFへの応用例を示します。基本動作PDFからR上にテキストを落とすreadPDF()の基本的な使い方です。R"の目次PDFにします。動作を確認したい人は適宜ダウンロードしてきてください(デスクトップ上にContents.pdfというファイル名でおきました)。readPDF()を動作させるためには次のシステムが必要です。パスが表示されるかを確認しましょう。""engineに指定する引数は初期値のxpdfで良いと思われるので、特に指定する必要はありません。その他のシステムを利用したい時には変更してください。xpdfの他に、Rpoppler、ghostscript、Rcampdfおよびカスタマイズしたシステムが利用できます。"TextDocument"readPDF()の返り値はこのようなクラスオブジェクトになっています。"TextDocument"のように、テキストそのものはtm_res$contentに格納されています。tm_res$contentは文字列クラスオブジェクトです。すべてを表示させると長いので、先頭のいくつかのみを表示させます。"というようにPDFから文字をR上に抽出できました。あとの処理は通常のRでのテキストマイニングの手法を適用すればおkです。日本語PDFでも文字抽出さて、同様の手法を日本語が含まれるPDFに対して実行すると、アルファベットや数字は抽出することができますが、肝心の日本語が抽出できません。そこで、[http://akkunchoi.github.io/xpdf-japanese.html:embed:cite]このページにあるように、必要なツールをインストールしたのち、xpdfの内容に修正を加えておきます。これで準備は整いました。沖縄県(PDF:145KB)」を対象にします。ダウンロードしたファイルは000323624.pdfという名称です。例によって一部を取り出してみます。""というわけで日本語のPDFでもテキストを落とすことができて、小さな小さな自尊心が保たれました。おまけせっかくなので市区郡町村のデータフレームを作成してみました。(1)はてなブログをはじめよう!u_riboさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。