Open and Reproducible Science Advent Calendar 2021はじめました

本記事は,Open and Reproducible Science Advent Calendar 2021 - Adventar1日目の記事です。

2019年11月11日から,日本でオープンサイエンスや再現可能性に関してオンラインで情報共有をするJapanese Community for Open and Reproducible Science (JCORS)をはじめました(詳細は,JCORSはじめました!!! - Computational Clinical Psychology Labを参照ください)。それに合わせて,2019年から「Open and Reproducible Science Advent Calendar」を行っています。少々ネタ切れ感もしくは今年もたくさん話題があってちょっと整理しきれないような感じもありますが,2021年度も行うことにしました。以下で行っておりますので,是非ともご参加ください!

adventar.org

なお,過去の「Open and Reproducible Science Advent Calendar」は,以下から見れますので,振り返りなどに活用ください。

adventar.org

adventar.org

では,今年もOpen and Reproducible Science Advent Calendarをお楽しみください。

Enjoy!

Rocker(RstudioのDockerイメージ)使用時のGitHubアクセストークンの扱いについて

Rocker便利ですよね。簡単かつすぐにRstudioと必要なRパッケージが準備できます(ダウンロード時間がかかるくらい)。Rockerの詳細は,以下を参照ください。

ykunisato.github.io

さて,RockerでのRStudio利用はとても便利なのですが,GitHubを二段階認証して,リポジトリの操作にpersonal access token (PAT)を使っている場合,ほぼ毎回IDとPATの入力を求められます。一方,普通のデスクトップ版のRStudioだとIDとPATがどこかに保存されるようで,毎回の入力は不要です。私は複数のGitHubリポジトリを切り替えつつ作業をするので,これだと若干Rockerを使うのが面倒だなという気持ちもでてきます。ちょっと調べてみたら,以下にちゃんとまとめてありました。

usethis.r-lib.org

詳しくは上の記事を読むのが良いのですが,すでにGitHubのPATをお持ちで,すでにRockerでGithubを使ったことがある人の場合は,以下だけで大丈夫です(なお,gitcredsとghは,usethisがインストールされていれば,入っています)。以下を実行すると,PATを聞いてくるので,貼り付ければ終わります。これで,GitHubとやりとりするときに,毎回IDとトークンをいれる必要はなくなりました。

gitcreds::gitcreds_set()

なお,設定の確認をしたい場合は,以下で確認できます。

gh::gh_whoami()

心理学の研究室でGoogle Compute Engineを使ったRStudioサーバーを運用した感想

こちらは,ベイズ塾 Advent Calendar 2020 - Adventar24日目の記事です。

2020年度は,研究室でGoogle Compute Engine上にRStudioサーバーをおいて卒論などを書いてみました。その感想を書きます。この記事はGCE上でRStudioサーバーを使ってみた感想を書きますので,具体的な導入方法は,以下を参照ください。

Docker-composeを使ってGCE上の複数のサービス(Rstudio, Jupyter notebook, JATOS, elabFTW)をHTTPS化する方法

動機

RとRStudioを使えば,統計解析だけでなく,行動課題の作成(jsPsych),調査票の作成(SurveyJS),論文執筆(R Markdown)も可能なので,是非とも学生に使ってほしいと思っていましたが,その導入が結構大変でした。コロナ渦前は,ゼミ室に学生が使える用のパソコンを用意して,1つずつ私の方で設定をしていました(以前はjsPsychではなくPsychoPyを使っていました)。学生が慣れているWindows PCを用意するのですが,そのインストール作業が私にはなかなかの苦行でした・・・これをどうにか解決したいので,学生がブラウザからアクセスすれば,整備済みのRStudioが使えるようにできるといいなと思っており,クラウドサーバーの導入を2年位前から考えていました。そして,今年はコロナ渦となり,学生は自宅にいて卒論・修論に取り組むことになりました(なお,専修大学では後期からは対面が可能になりました)。学生の自宅のPC環境の設定をするのは至難の業なので,確実にクラウドサーバーの導入が必要に思いました。これが表向きの理由ですが,正直なところ,なんかRStudioサーバーを導入すると卒論指導の幅が広がって(新規な解析も試せるし,シミュレーションなどもできる),面白くなりそうと思ったのが大きいです。

導入してよかった点

導入して,2021年6月から2021年12月まで使ってみて感じたメリットは以下です。

  • R StudioサーバーとともにGitHubも導入したので,学生の進捗がとてもわかりやすくなった(プッシュ時にコミットメッセージが通知されるので,「結果のここまで書けたのか」とか分かる)。

  • R StudioサーバーとともにR Markdownによる卒論・修論執筆も導入したので(嫌な人は別に使わなくてもいい),フォーマットのチェックではなく中身や論文の論理構成に指導を集中できた。専修大学の場合,senshuRmdを使えば,中身をしっかり書けば,超美しい卒論原稿が出力され,それがそのまま卒論として受理されます。

  • 研究指導していて,楽しい。学生の頑張りがGitHubの通知として上がってくる感じがとてもよい。

  • 学生はChromeなどのブラウザに接続できればいいので,自前のノートパソコンで作業ができる。ノートパソコンをもってない学生のためにChromebookを研究室で用意したが,普通にWindows PCを用意することに比べるとかなりコストを下げることができた(コストは,4〜5分の1くらいです)。また,chromebookはログイン管理も楽だし,ソフトの管理も不要なので,管理コストが下がりました(学生が来る前に充電するくらい)。

  • Rが使えたので,心理学的ネットワーク分析やメタ分析のサブグループ解析など,これまで習ってきていない解析も簡単に実施できた。

  • 研究指導していて,楽しい。tidyverseを使いこなす学生を見ることがこれほど嬉しいとは。

  • 何度かR Markdownのトラブルやログインのトラブルがあったが,サーバー上の作業で完結するので対応も楽だった。

  • 今回はあまりそのメリットを感じれなかったが,CPUやメモリを柔軟に変更できるので,学生の作業負荷に応じて変更が簡単にできる。

  • 研究指導していて,楽しい。SPSSの出力は極力見たくない。長い文章をWordでは極力開きたくない。

  • 学部ゼミの前期では,演習課題として,jsPsychやRの基礎問題を解いてもらっている。以前は,研究室のパソコンにPsychoPyを設定してやってもらっていたが,パソコンごとに設定したり,たまに謎のエラーが出たりして苦労した。サーバーの設定だけで済むのは楽だった。

  • 学生指導だけでなく,自分が利用していてもRStudioサーバーは便利で,インターネットに接続できさえすれば,どこでも研究が再開できる(iPadからの利用もできる。別に利用しないけど...)。

導入して良くなかった点(コストや問題への解決策)

  • GCEを使うコストですが,最初はイキって4CPUにメモリもたくさん用意しました(13000円/月くらいだったかな)。ただ,Googleから「全然使ってないよ・・・お金の無駄・・・CPU減らしてごらん」とかメッセージが来たので,減らしました。さらに,CPUを減らしたら,メモリも減らしたらといわれて,最終的に1CPUに7.5GBのメモリに落ち着いて,5500円前後/月になりました。学部生が7名いて,同時に7名がアクセスして,作業していても特に問題はなかったです。常時動かしているので,研究室で年間7万弱のコストになります。こういうコストは増えましたが,学生のパソコンやchromebookでもブラウザさえあればよくなったので,ハード面でのコストは下がりました。この辺は研究室運営の考え方によって変わってくるかなと思います。また,今年はStanを回す人がいなかったので不要でしたが,場合によっては,一時的にCPUを追加するなどが必要かもしれません。

  • 教育上のデメリットとしては,学生が自分でRやRStudioなどのソフトウェアを導入する経験がなくなる点です。そこを飛ばせるので,かなり楽な面もありますが,自分でこういうことを設定してほしい気もします。ただ,こういう設定が本当に将来必要かも分からないので,そういうことよりも中身の行動課題の作成や統計解析や執筆に集中をしてほしいという私の考えを優先させました。この辺も先生方の教育理念によって変わってくるところかと思います。

  • デメリットではないかもしれませんが,サーバーを使うのでセキュリティにはかなり気を使う必要があります。サーバーの設定もそうですが,学生に周知する際には注意が必要です。また,データをサーバーに置く場合は,研究参加の同意時にそのような利用をする点を書くなどのデータ管理方法についても事前に決めておく必要があります(今年はメタ分析を実施したりして,新規のデータ収集が非常に少なかったのと,新規のデータ収集時にはその旨を説明して同意をとりました)。データ管理を適切に行うためにも,ローカルでの保管よりも,管理者による定期的なチェックが必要に思います。この辺は,少しクラウドサーバー利用ならではの負担かもしれません。

  • デメリットというよりは導入のハードルになるとおもうのが,管理者にサーバーの知識が求められるという点です。私も素人同然ですが,チョットだけ分かるので,なんとかやっている感じです。いきなり研究室に導入すると学生に迷惑をかけるので,教員が個人的に使ってみて慣れてきてから導入するのが良いかと思います(私は長期在外研究期間中に,同室の研究者が解析はサーバーを使っているのを教えてもらってから,半年くらい自分で使ってみてから,研究室に導入しました)。今年経験したトラブルは,学生がパッケージのインストールができない,学生がサーバーにログインできなくなる,サーバーが立ち上がってなかったがありました。学生のパッケージがインストールできない問題は,こちらにあるように,ユーザーをstaffグループにいれることで解決します。学生がサーバーにログインできなくなる問題は,結局よく全く分からず,最終的には,学生のアカウントを作り直して,ファイルを移動させることにしました。学生への影響は小さかったですが(ログイン名が変わったくらい),少しドキドキしました。サーバーが立ち上がってなかった問題は,私の単なるミスです。1回は誰も気がついてなかったので,こっそり立ち上げて,もう一回は学生から「アクセスできない」と問い合わせを受けて,立ち上げました。これ自体はボタンをクリックして立ち上げるだけなので,大したことではないです。

Enjoy!

2020年の日本での再現可能性関連記事・発表のまとめ

本記事は,Open and Reproducible Science Advent Calendar 2020 - Adventar24日目の記事です。そろそろアドベントも終わりということで少しまとめとして,2020年の日本での再現可能性関連発表をまとめていきたいと思います。

英語もいれると膨大になるので,日本語に限定しました。ざっくり私が検索してみつけたものをまとめている程度ですので,「私の発表が含まれてないぞ!」ということがございましたら,ご連絡くださいませ。

論文や雑誌の記事

学会発表やシンポジウム

norimune.net

note.com

ブログ記事(Open and Reproducible Science Advent Calendar 2020含む)やOSF登録資料

jpaRmdで再現可能な査読対応をしちゃおう!

これは,Open and Reproducible Science Advent Calendar 2020 - Adventar19日目の記事です。

今年は,日本心理学会第84回大会で,竹林由武さんと一緒にチュートリアル・ワークショップ今日からできる再現可能な論文執筆を行いました。それにあたって,『心理学研究』投稿用のR MarkdownテンプレートパッケージjpaRmdを作りました。『心理学研究』用テンプレート『認知行動療法研究』用テンプレートの紹介については,既に行ったので,今回は,査読時のリプライと修正対照表の作成用テンプレートの使い方について説明をします。

github.com

jpaRmdのインストール方法

インストールは,remotesのinstall_github()を使って,GitHub経由で行います。remotesがインストールされていない方は,事前にinstall.packages("remotes")でインストールください。

# install.packages("remotes")
remotes::install_github("ykunisato/jpaRmd")

査読時の修正原稿の作り方

具体的な手順を説明するために,jpaRmdを使って原稿を用意してみましょう。jpaRmdで『心理学研究』論文を再現可能に書こう! - Computational Clinical Psychology Labを参考に,以下を実行して,『心理学研究』用原稿を用意しましょう。

  1. (1)「File」 -> 「New File」 -> 「R Markdown…」 をクリックして,「From Template」から「Japanese Psychological Association format {jpaRmd}」を選びます。
  2. デフォルトでは,Untitledになっているので,Testに変更して,「OK」をクリックします。
  3. 開いたTest.Rmdファイルの38行目のRmd_file="Untitled.Rmd"になっているので,"Test.Rmd"に変更します。
  4. knitしてPDFを作ります。

ここまでは,jpaRmdで『心理学研究』論文を再現可能に書こう! - Computational Clinical Psychology Labで解説した通りです。次に,査読者の指摘に従って,原稿を修正することにします。査読者の指摘に従って原稿を修正する場合は,元の原稿ファイルをコピーして,別名で保存します。

具体的には,以下のようにファイルの左のチェックボックスにチェックをいれて,「More」から「Copy...」をクリックします。

f:id:cpp-laboratory:20201217053529p:plain

以下のようなウィンドウが開きます。

f:id:cpp-laboratory:20201217053525p:plain

改稿原稿と分かるように,Test_r1.Rmdと名前をつけてOKをクリックします。

f:id:cpp-laboratory:20201217053523p:plain

それでは,Test_r1.Rmdを改稿していきます。まず,以下を削除しました。

f:id:cpp-laboratory:20201217054054p:plain

次に,以下を加筆しました。

f:id:cpp-laboratory:20201217054104p:plain

最後に,以下の文章を修正しました。

f:id:cpp-laboratory:20201217054333p:plain

とりあえず,改稿は終わったとして,査読時のリプレイと修正対照表を作ることにしましょう。jpaRmdには,査読コメントへのリプライや原稿の修正対照表に関するテンプレートが用意されています。

査読時のリプライと修正対応表のテンプレートを用意する

査読時のリプライと修正対応表のテンプレートを用意しましょう。RStudioで,「File」 -> 「New File」 -> 「R Markdown…」 をクリックします。「Reply to Reviewer {jpaRmd}」を選びます。

f:id:cpp-laboratory:20201217060444p:plain

このままだとUntitled.Rmdで保存されるので,保存ボタンをクリックして,名前を付けて保存します。

f:id:cpp-laboratory:20201217060457p:plain

なんでもいいのですが,replyという名前で保存します。

f:id:cpp-laboratory:20201217060548p:plain

コメントへのリプライを書く

以下のようにR Markdown上で査読者のコメントとそれに対するリプライを書きます。なお,この辺の書き方は,研究室や領域によっても変わると思うので,適宜好みに変更ください。あくまで一例です。

f:id:cpp-laboratory:20201217060751p:plain

修正対照表を用意する

修正対照表は,修正しつつ作成してもいいのですが,まずは修正作業に集中して,後から修正前原稿と修正後原稿の差分をチェックして反映させるほうが楽かもしれません。Rではいくつかファイルのテキスト情報の差分をチェックしてくれる関数があります。以下のdiffobjを使うと,とても綺麗に表示してくれるのでオススメです。なお,diffobjを使う場合は,Rmdファイルではなくて,RmdからPDFを作る過程で生成されるTeXファイルを使うと良いです(jpaRmdの場合は,デフォルトでTeXファイルが出力されるようになっています)。以下のように,diffFile()関数内に,修正前原稿のTeXファイル(Test.tex)と修正後原稿のTeXファイル(Test_r1.tex)をいれます。

library(diffobj)
diffFile("Test.tex","Test_r1.tex")

実行するとViewerに以下のように修正された箇所がピックアップして表示されます。どこが修正前でどちらが修正後か分かるように色分けして表示されます。この情報を使って,修正対照表をつくっていきましょう。

f:id:cpp-laboratory:20201217061959p:plain

修正対照表を作る場合は,以下にあるようなold_m()関数とnew_m()関数を使います(jpaRmd用のオリジナル関数です)。old_m()関数は,修正前原稿のテキスト情報を蓄積するもので,new_m()関数は,修正後原稿のテキスト情報を蓄積するものです。なので,以下のように,old_m()に修正前の原稿のテキストをいれて,new_m()に修正後の原稿のテキストをいれてきます。この作業を自動化できると良かったのですが,現状ではちょっと面倒な部分がありますので,上のdiffFile()で表示された結果からコピペが柔軟で楽かと思います(R Markdownを使う理由にコピペ汚染の回避とか言っていましたが・・・)。これは,上から処理をしていきますので,old_m()とnew_m()の対で,どんどん修正前と修正後をいれていきます。

注意点は以下の3つです。

  • \ldots{}みたいなTeXの記号があるとうまくいかないので削除するか手入力ください
  • old_m()とnew_m()の対で書いていきます(これは後で修正する時に修正しやすくするためです)
  • ページ番号と行番号などは自動で入らないので(diffFile()で表示されるのはTeXの行番号なのでPDFとは違うので,使えない),knitされたPDFで確認しつつ手入力ください

f:id:cpp-laboratory:20201217062937p:plain

old_m()とnew_m()の設定ができたら,knitします。knitすると,old_m()とnew_m()で蓄積されたテキストを表として出力するmake_correction_table()関数が実行されて,以下のように出力されます。微妙に業界によって書き方は違うのですが,最低限は押さているのではないかと思います。

f:id:cpp-laboratory:20201217062957p:plain

修正対照表は,以下のように,次のページにも続いていきます(実に美しいですね...)

f:id:cpp-laboratory:20201217063041p:plain

美しく正確な修正対照表で査読者をいらいらさせずにアクセプトをもぎ取りましょう!

Enjoy!

jpaRmdで『認知行動療法研究』論文を再現可能に書こう!

これは,Open and Reproducible Science Advent Calendar 2020 - Adventar18日目の記事です。

今年は,日本心理学会第84回大会で,竹林由武さんと一緒にチュートリアル・ワークショップ今日からできる再現可能な論文執筆を行いました。それにあたって,『心理学研究』投稿用のR MarkdownテンプレートパッケージjpaRmdを作りました。

ただ,心理学和文誌は,『心理学研究』に準拠しつつ微妙にちがったりするので,『認知行動療法研究』投稿用のR Markdownテンプレートも作成して,jpaRmdに組み込んでみました。以下,『認知行動療法研究』投稿用のR Markdownテンプレートの使い方になります。

github.com

jpaRmdのインストール方法

インストールは,remotesのinstall_github()を使って,GitHub経由で行います。remotesがインストールされていない方は,事前にinstall.packages("remotes")でインストールください。

# install.packages("remotes")
remotes::install_github("ykunisato/jpaRmd")

日本認知・行動療法学会『認知行動療法研究』用テンプレート(非公認)

インストールができたら,RStudioで,「File」 -> 「New File」 -> 「R Markdown…」 をクリックします。

f:id:cpp-laboratory:20201215064923p:plain

以下の画面がでてきたら,「From Template」から「Japanese Journal of Behavioral and Cognitive Therpies format {jpaRmd}」を選びます。デフォルトでは,Untitledになっているので,適宜名前は変更ください。以下では,例として,Testに変更しています。「OK」をクリックします。

f:id:cpp-laboratory:20201215065356p:plain

フォルダができて,以下のようにファイルが配置されていると思います。また,自動でTest.Rmdというファイルが開くと思います。

f:id:cpp-laboratory:20201215064929p:plain

jpaRmdでは,bibファイルを用意して,LaTeX形式で引用をすると,心理学研究に合わせたフォーマットで引用文献を出力することができます(くわしくは,jpa_citeに合ったBibファイルの作り方 - Qiita)。knitする前にその設定をします。

f:id:cpp-laboratory:20201216055155p:plain

上記は,40行目のRmd_fileが"Untitled.Rmd"になっているので,以下のように,上記で設定した"Test.Rmd"に変更します。

f:id:cpp-laboratory:20201216055153p:plain

さて,早速,Knitをしてみましょう。Knitボタンをクリックしてください。もしかすると,Rmarkdownやその他のパッケージなどが入ってないと,初回時に色々とインストールされるので,PDFが出力されるまでに時間がかかるかもしれません。以下のような感じのPDFが出力されます。いい感じですね(1ページの行数,1行の文字数,行番号の追加などが『心理学研究』とは異なります)。

f:id:cpp-laboratory:20201215065359p:plain

引用文献のためのbibファイルの準備方法については,@kosugittiの以下のマニュアルを参照ください。

qiita.com

Research Compendium機能

なお,おまけの機能として,Research Compendiumの関数も用意しています。以下のようにset_rc_jabct()関数を使って,引数にプロジェクト名をいれると(なおスペースは避けてください),『認知行動療法研究』用のRmdや解析,データを配置するフォルダなども準備されます。

library(jpaRmd)
set_rc_jabct("rmarkdown_for_reproducibility")

上記を実行すると“rmarkdown_for_reproducibility”という名前のディレクトリーの下に以下の下位ディレクトリーができます。paperディレクトリ内のpaper.Rmdを開いて,引用文献に関するjpa_cite関数内のファイル名をpaper.Rmdに変更した上で,Knitを押してください。PDFが生成されます。

  • analysis: 分析用ファイルを置く場所
  • data: データを置く場所
  • function: 分析で使う汎用関数を定義したりした場合にそのファイルを置く場所
  • materials: 研究で使ったマテリアルを置く場所
  • paper: 論文原稿を置く場所
  • README.md

以下のような感じです。

f:id:cpp-laboratory:20201215065154p:plain

和文誌テンプレートの今後

個人的には,心理学関連領域は,全て同一投稿テンプレートにすべきと考えています。国内誌でテンプレートを統一すると,特定の雑誌でリジェクトされてもすぐに他の雑誌に投稿できるので利便性が高いです。また,フォーマットの詳細まできっちり明示的に指定してマニュアル化しているのは『心理学研究』だけな気がするので(思い込みかもしれませんが・・・),それに完全に合わせたほうが良いと思います。

ただ,現状はまだそういう状況ではないので(急に妥協),『認知行動療法研究』のように他の和文誌も追加していくのもいいかなと思っています。何か追加してほしい雑誌があれば,細かい仕様を教えてもらえれば追加するかもしれませんので,ご連絡ください。

Enjoy!

jpaRmdで『心理学研究』論文を再現可能に書こう!

これは,Open and Reproducible Science Advent Calendar 2020 - Adventar17日目の記事です。

今年は,日本心理学会第84回大会で,竹林由武さんとチュートリアル・ワークショップ今日からできる再現可能な論文執筆を行いました。それにあたって,『心理学研究』投稿用のR MarkdownテンプレートパッケージjpaRmdを作ったので,その紹介をします。こちらを使うと,再現可能に投稿用原稿の作成が可能となります。国際誌に関しては,R Markdownテンプレートが充実してきていますが,和文誌はまだ多くなく,『心理学研究』を始めとする心理学和文誌のテンプレートはないように思います。無いなら作ろうの精神で作ってみました。

github.com

jpaRmdのインストール方法

インストールは,remotesのinstall_github()を使って,GitHub経由で行います。remotesがインストールされていない方は,事前にinstall.packages("remotes")でインストールください。

# install.packages("remotes")
remotes::install_github("ykunisato/jpaRmd")

日本心理学会『心理学研究』用テンプレート(非公認)

インストールができたら,RStudioで,「File」 -> 「New File」 -> 「R Markdown…」 をクリックします。

f:id:cpp-laboratory:20201215064923p:plain

以下の画面がでてきたら,「From Template」から「Japanese Psychological Association format {jpaRmd}」を選びます。

f:id:cpp-laboratory:20201215064926p:plain

なお,デフォルトでは,Untitledになっているので,適宜名前は変更ください。以下では,例として,Testに変更しています。「OK」をクリックします。

f:id:cpp-laboratory:20201215065331p:plain

フォルダができて,以下のようにファイルが配置されていると思います。また,自動でTest.Rmdというファイルが開くと思います。

f:id:cpp-laboratory:20201215064929p:plain

jpaRmdでは,bibファイルを用意して,LaTeX形式で引用をすると,心理学研究に合わせたフォーマットで引用文献を出力することができます(くわしくは,jpa_citeに合ったBibファイルの作り方 - Qiita)。まず,その設定をします。

f:id:cpp-laboratory:20201215064932p:plain

上記は,38行目のRmd_fileが"Untitled.Rmd"になっているので,以下のように,上記で設定した"Test.Rmd"に変更します。

f:id:cpp-laboratory:20201215064935p:plain

さて,早速,Knitをしてみましょう。Knitボタンをクリックしてください。もしかすると,Rmarkdownやその他のパッケージなどが入ってないと,初回時に色々とインストールされるので,PDFが出力されるまでに時間がかかるかもしれません。こんな感じのPDFが出力されます。いい感じですね。

f:id:cpp-laboratory:20201215064938p:plain

引用文献のためのbibファイルの準備方法については,@kosugittiの以下のマニュアルを参照ください。

qiita.com

Research Compendium機能

なお,おまけの機能として,Research Compendiumの関数も用意しています。以下のようにset_rc_jpa()関数を使って,引数にプロジェクト名をいれると(なおスペースは避けてください),『心理学研究』用のRmdや解析,データを配置するフォルダなども準備されます。

library(jpaRmd)
set_rc_jpa("rmarkdown_for_reproducibility")

上記を実行すると“rmarkdown_for_reproducibility”という名前のディレクトリーの下に以下の下位ディレクトリーができます。paperディレクトリ内のpaper.Rmdを開いて,引用文献に関するjpa_cite関数内のファイル名をpaper.Rmdに変更した上で,Knitを押してください。PDFが生成されます。

  • analysis: 分析用ファイルを置く場所
  • data: データを置く場所
  • function: 分析で使う汎用関数を定義したりした場合にそのファイルを置く場所
  • materials: 研究で使ったマテリアルを置く場所
  • paper: 論文原稿を置く場所
  • README.md

以下のような感じです。

f:id:cpp-laboratory:20201215065154p:plain

作成にあたっての色々

1年くらい前に,専修大学心理学科の卒論用テンプレートを作っていたので,日本心理学会第84回大会でチュートリアル・ワークショップ今日からできる再現可能な論文執筆では,『心理学研究』のテンプレートを作って配布しようと思いました(このテンプレートを作るように自分を仕向けるためにTWSを申請しました)。TWSの申請時点では開発をはじめておらず,本格的に開発スタートしたのは,10/17くらいで,約2週間前でした(言い訳すると,今年は自身の授業のオンライン化,各種学会でのオンラインでの発表,教務の仕事などでかなり時間が取れませんでした・・・)。授業などの合間を使って1週間くらいで作りました。作り方はそれほどややこしいものではなくて,ある程度試行錯誤することができると意外に簡単に作れます。ただ,試行錯誤が結構多いので,頭が良い人ほどイライラするかもしれません(私は結構,試行錯誤してうまくいくと喜ぶというシンプルな脳みそなので,この作業は結構楽しいです)。R Markdownテンプレートに興味を持たれた方は,以下の記事を参照ください。

cpp-laboratory.hatenablog.com

ただ,TWSを実施した2020年10月31日(土) の時点では,bibファイルからの引用文献の自動出力は,うまくできておらず,APA形式ではあるが,『心理学研究』の形式ではない状態でした(既存のスタイルファイルなどを編集すればうまくいくとかではなく抜本的な検討しないと上手くいかないので,及び腰になっていた)。そのことについて,ぼやいていましたら,同僚の小杉先生が,「やりましょう!」と便利な引用文献処理関数を作成くださいました。お忙しいのに,およそ2ヶ月位で引用文献を一から処理するR関数を作られました(本当にすごいです!)。詳しくは,以下を参照ください。

www.kosugitti.net

現状では,まだテンプレートで気になる部分があるのですが,実際に原稿を書いたりして,テストしつつ,最終的により洗練化したテンプレートにしていきたいなあと思います。

Enjoy!