R Studio (R Markdown)で論文を書きながら、Zoteroで管理している文献情報を引用する

※当ブログでは商品・サービスのリンク先にプロモーションを含みます。

R StudioZoteroを連携すると便利なんじゃないかと思って調べてみたら、すんなり連携できることがわかった。

これは便利!

R Studio (R Markdown)で論文を書きたい!

論文執筆環境として、R Markdownが便利なんじゃないかと思っている。

先人の先生方の中にも、R Markdonw便利だよ!と言っている人が散見される (Rが大好きな人は特に?)。

私は普段からMarkdownでメモを取っていて、何ならこのブログの原稿もMarkdownで書いている。よって、Markdownには馴染が深いから、導入の敷居は低い。

何よりMarkdownはプレーンテキストなのがいい。Gitでバージョン管理するところまで考えると、これはめちゃくちゃアドバンテージだと思う。

Wordとかのリッチエディターは、WISYWIGなのはいいんだけど、文章と装飾をごちゃまぜにしてしまうところがよくない。しかもバイナリファイルになるからバージョン管理 (というか差分の確認)もしづらい。Wordは版管理の仕組みがあるけど、使いやすいかと言えば微妙だと思っている。

しかも、日本心理学会が発行している学会誌「心理学研究」に準じたフォーマットも有志によって作成されているではないか。

R Markdownを使えば、R Studioで論文が書けるから、Rの分析結果をそのまま載せられるのもいい。

などと考えると、これから論文執筆するなら、R StudioでR Markdownな論文執筆環境を作って、R Markdownによる執筆に慣れておくのって便利なんじゃないかと思うのだ。

Zoteroで管理している文献リストをR Studioで使いたい!

論文執筆にあたって、探してきた論文や書籍の情報は、フリーの文献管理ソフト「Zotero」に集約している。

せっかくZoteroに文献情報を集約しているのだから、このデータを使ってシームレスに論文執筆できたらさぞ便利なことだろう。

Zoteroで管理している文献リストをR Studioに取り込んで、R Markdownで執筆する論文に引用できれば素晴らしくハッピーになれる気がしてきた。

そして、これが意外とあっさりとできてしまったのだった。

Zoteroアカウントを発行して、文献データを同期する

ZoteroとR Markdownを連携するにあたり、まずはZotero側でAPI keyを発行しよう。

この前提として、Zoteroアカウントを作る必要がある。

Zoteroアカウントを作ったら、Zoteroアプリ側で文献データをアカウントに同期してやる。

R StudioとZoteroを連携 (Zoteroアカウントにてデータ同期)

こうしてやることで、Zoteroアカウント上のストレージ領域に文献データがアップロードされる。ストレージ領域は無料アカウントでも300MBまで使えるから、卒論で使うレベルなら問題ないはず。

アカウントの同期設定を一度してしまえば、あとはZoteroアプリで文献データを操作 (追加、削除、など)するたびにデータが同期されるようになる。

ZoteroのAPI keyを発行する

ここまでは前置きで、R StudioとZoteroの文献データを連携するために、API keyを発行する。

API KeyはZoteroにログインした先のページで作成できるようになっている。

Settings > Security > Applicasions に Create new private key というボタンがあるから、こちらから作成しよう。

よくわからなかったら、このURLにアクセスすべし。

https://www.zotero.org/settings/keys/new

R StudioとZoteroを連携 (ZoteroのAPI keyを新規作成)

Key Nameに適当な名前を入れて (ここでは rstudio にしている)、あとはそのまま Save Key をクリックする。

ここではこのKeyに対する権限設定ができるようになっており、 Personal Library > Allow library acceess がチェックされていればOKだ。このAPI keyを使ってアクセスしたときに、文献データが読めればよいので。

R StudioとZoteroを連携 (ZoteroのAPI keyを発行)

これでAPI keyが発行される。この画面の背景が緑になっている部分に何やら文字列ができていて、これがAPI Keyだ。これをコピーしておく。

おそらくこの画面でしかこの文字列はお目にかかることはないから、間違いなくコピーしておくように (以下の操作をする間、ずっと開いておくと安心か?)。

R Studio で Zotero のAPI keyを設定する

ZoteroでAPI keyが発行できたら、そのAPI keyをR Studioに設定してやろう。

R StudioのOptions > R Markdown > Citations を開く。

R StudioとZoteroを連携 (R Markdown Citations)

ここで以下の操作をしよう。

  1. Zotero Library で Web を選ぶ
  2. Zotero Web API Key にさっきコピーした API key を貼り付ける
  3. Verify Key をクリックする
  4. Use libraries に引用に使うZoteroライブラリを指定する

うまくいけば、これでR StudioとZoteroの連携ができたことになる。

R Studio で Zotero の文献を引用する

R StudioとZoteroの連携ができたら、早速、引用できるか試そう。

R Markdownの文書を開いて、Visualモードにしておく。エディタの左上にある「Visual」をクリックすればVisualモードになる。このモードにしておくと、MarkdownなんだけどWordなどのように装飾された状態で編集ができるようになる。

R StudioとZoteroを連携 (Rmdに引用を挿入)

Visualモードにすると、エディタ右上の方に「Insert」というメニューが出てくるので、この中にある「Citation…」をクリックする。ショートカットなら Ctrl + Shift + F8だ。

R StudioとZoteroを連携 (Rmdに引用を挿入 Zoteroの文献リストから)

続いて出てくる画面の、My Sourcesの中にZoteroというのが出現していれば成功だ。

先の連携設定をしてから、このInsert CitationダイアログにZoteroの文献リストが出てくるまでタイムラグがあったので、もし同じように操作してもZoteroが出て来ない場合は、しばらく待ってからまた同じ操作をしてみて欲しい。

Zotero以下に、設定したライブラリの文献リストが出ており、この中から引用したい文献を選び、右下の「Insert」をクリックすれば引用ができる。

なお、引用に使われるキーは第1著者の値から作られるようだ。著者が漢字名の場合、中国語読みっぽいものに変換されている。キーは自動的に作られており、日本語読みに変えたりすることはできないようだ。個人的には微妙に気持ち悪いんだけど、この機能を使う以上はそういうものだと思った方がよさそう。きっと中国語対応の方が進んでいるということだろう。

R StudioとZoteroを連携 (Rmdに引用を挿入 Zoteroの文献リストから)

以上の操作により、R Markdown文書に引用が作成され、合わせて「references.bib」というファイルが作られた。

これは先のInsert Citationsダイアログの左下に「Create: references.bib」とあり、これに従って作られるようだ。

R StudioとZoteroを連携 (Rmdに引用を挿入 Zoteroの文献リストから bibファイル生成)

references.bibを開いてみると、BibTeXフォーマットの引用データが生成されていた。これも先のInsert Citationsダイアログにて「Format: BibTeX」で指定しているとおりだ。

おわりに

R Studio (R Markdown)で論文を書きつつ、引用は文献管理ソフトのZoteroからデータを持ってこれたらいいな、というピンポイントな欲求があったのだが、先人の知恵によって解決済だった。

これができたらすごく便利だと思ってたら、あっさりとできるようになってよかった。本当にありがたい。

文献収集はこれからも続くけど、文献データはZoteroアカウント経由で常に同期されるから、都度ZoteroのデータをR Studioに持ってきて~とか考えなくて済むのも地味にいい。

実際に論文の執筆をするのはまだ数ヶ月先になりそうだけど、それまでに環境を整えておくのも大事なことだと思う。きっと将来、この設定をあらかじめやっておいてよかったと思うことだろう。

学術活動

Posted by junchan