Quartoによるデータ解析と論文執筆入門

2023年9月16日(土) 11:20 〜 13:20 第4会場 (4F 403)

専修大学 国里愛彦

本WSの内容

  1. 再現可能なデータ解析・論文執筆とQuarto

  2. Quartoを使った解析報告方法

  3. Quartoを使った論文執筆方法

本発表は,JSPS科研費「再現可能な心理学研究のためのクラウド研究基盤の開拓(20K20870)」の助成を受けています。

再現可能なデータ解析・論文執筆とQuarto

再現性の危機

→研究知見に対する再現可能性の担保が重要!

3つの再現可能性

Goodman, Fanelli, and Ioannidis (2016) による3つの再現可能性

  1. 方法の再現可能性: 論文と同じデータに同じ方法を用いて,同じ結果が得られること

  2. 結果の再現可能性: 新規のデータに同じ方法を用いて,同じ結果が得られること

  3. 推論の再現可能性: 結果から質的に同じ結論が得られること

方法の再現可能性の問題

→データ共有がなければそもそも不可能・・・

  • Science誌掲載論文では,データとコードを共有していた研究が44%,そのうち再現できたのは26%(Stodden, Seiler, and Ma 2018)

→データとコードの共有方法が重要!

再現可能性を高めるには

  • 生データから最終的な結果までが追跡できるようにコードとドキュメントを用意

Quartoとは

  • オープンソースの科学・技術出版システム

  • 解析コードと文章を1つのファイル内で統合でき,以下のように文章,コード,結果(プロット)からなるファイルを出力できる。

平均と標準偏差が1の正規分布から100個の乱数をプロットします。

plot(1:100, rnorm(100, mean = 1, sd = 1))

Quartoで生成できるファイル

  • Quartoファイルの拡張子はqmd

  • Quartoは,qmd形式からMarkdown形式(md)に変換し,それをpandocを介して,HTML,PDF,マイクロソフトWord, マイクロソフトPower Point,ePub形式などに変換できる。

R Markdownとの違い

  • knitrだけでなくJupyterをエンジンに使えるので,PythonやJuliaなどを扱うのが便利になった。

  • QuartoはRStudioに限定されず,VS Codeなど他のIDEでも使える。

  • R Markdownは用途に合わせて追加パッケージをインストールする形式だが,Quartoは単体で機能できるように作成されている(Rに依存しない)。

→RStudioとR Markdownにかなり慣れているコアユーザーはQuartoに移行する必要はない。むしろ初めて技術・出版システムを使う人向けかもしれない。

Quartoの使い方

  • 一番簡単なのは,最新のRとRStudioをインストールする方法(終わり!)

  • JupyterエンジンやPython,Juliaは個別にインストールする必要がある(今回のTWSのスコープ外)。

プロジェクトとディレクトリ構造

  • Quartoではデータ解析をするので,別に保存されたデータを読み込む必要がある。

  • Quartoのファイルが置かれている場所,データの置かれている場所,Rのカレントワーキングディレクトリの3つが重要になる(qmdファイルからデータが読めないとエラーが出る)。

  • RStudioのプロジェクト機能とディレクトリ構造を意識する

プロジェクトの作成

  • 「File」から「New Project…」をクリックする。

New Project Wizard(1)

  • まずは「New Directory」をクリックする。

  • すでに作成済みのディレクトリをプロジェクトに使う場合は「Existing Directory」,GitHubなどのバージョンコントロールをする場合は「Version Control」を使用する。

New Project Wizard(2)

  • 「New Project」をクリックする。

  • その他に「R Package」用のプロジェクトなどもある。「Quarto Project」ではプロジェクトフォルダ内にQmdファイルが配置される(今回は使わない)。

New Project Wizard(3)

  • Directory nameにプロジェクト名を書き込む(sotsuronとかでいいので,分かるように英語・ローマ字で書く)。

  • Create project as subdirectory of :でディレクトリの場所を決める(指定した場所に上記のDirectory nameのディレクトリが作成される)。

プロジェクトの利用

  • プロジェクトを開くと,右下パネルのFilesが指定したディレクトリになる。

  • ディレクトリ内にRprojという拡張子のファイルが作成される(プロジェクトの情報を保存したファイル)。

  • プロジェクトのディレクトリがカレントワーキングディレクトリになる(Consoleで以下を実行すると確認できる)。このディレクトリを起点に,Qmdファイルを作成したり,データを配置する。

getwd()

Recent Projects使用のススメ

  • 研究や作業単位ごとにProjectを作る。その際にProject間の切り替えをするのにRecent Projectsが便利。

  • Recent Projectsには,過去に開いたプロジェクトが出てくるので,使うものを選択すれば良い。

ディレクトリを組織化

  • 左のようになっているとまずい。

  • 中身が分かるようにファイル名をつけ,解析,データ,関数などでフォルダにまとめる(Research compendium)。

今回のTWSのディレクトリ構成

  • 今回のTWSでは最小のディレクトリ構成にする。

  • プロジェクトのディレクトリ直下にanalysis01.qmdファイルを置く(解析を分ける必要ができたらanalysis02.qmdと連番をふる)

  • データはdataフォルダを作成して,そのフォルダ内に配置する。

Quartoを使った解析報告方法

Qmdファイルの作成(1)

  • 新規作成ボタンをクリックして(1),「Quarto Document…」をクリックして(2),Qmdファイルを作成。

Qmdファイルの作成(2)

  • TitleとAuthorを記入して,「Create」をクリックする(TitleとAuthorは変更可能なので,適当で良い)。

Quarto用語説明:YAML

  • qmdファイルを作ると”---“で囲われた箇所があり,これはドキュメントのメタデータの情報になる(今回の場合は,htmlファイル形式で出力をするなど)。必要に応じて変更を加えることになる。

Quarto用語説明:Visual editor

  • QuartoはMarkdown形式で文章やコードブックが書けるが,いきなりMarkdownとか言われても困ると思う。

  • Visual editorモードなら,Wordのような感じで,太字,斜体などの指定や挿入を上のツールバーから実施できる。

Quarto用語説明:Outline

  • RStudioは文章の見出し設定に合わせて,右にアウトラインを示してくれる。

Quarto用語説明:コードチャンク

  • Rを含むコードは,以下のようにコードチャンク内に記述する。

Visual editorを使おう!

  • Markdown記法はそれほど覚えることはない,文章中にコマンドのようなものが入ることに抵抗がある人もいるのでは(**太字にしたい文字**で太字に指定するなど,Markdownの詳細はこちら
  • Visual editorならWordに似たような操作感覚でMarkdown記法を覚えなくても文字の装飾ができる。

文字の装飾

  • 太字にする場合は,太字にしたい文字を選択して,以下をクリックする。

  • 斜字にする場合は,斜字にしたい文字を選択して,以下をクリックする。

コードのハイライト

  • コードの説明をハイライトしたい(実行はしない)場合は,ハイライトしたい文字を選択して以下をクリックする。

見出しでアウトラインを意識

  • 普通の文章はNormalになり,見出しはHeader 1からHeader 6である。

  • Header は数字が小さいほど,大きな見出しになる。

  • 見出しを構造化して,文章のアウトラインを意識しよう!

箇条書き

  • 箇条書きする場合は,以下をクリックする。

  • 数字付きの箇条書きをする場合は,以下をクリックする。

リンクと画像の挿入

  • リンクを挿入する場合,リンクを張りたいテキストを選んで,以下をクリックする。

  • URLにリンクを貼り付けて,OKをクリックする。

画像の挿入

  • 画像を挿入したい箇所で以下をクリックする。

  • 挿入したい画像を選択して,OKをクリックする(なお直接ドラッグ・アンド・ドロップも可)。

ショートカットも便利

キーボードショートカット Markdown記法
ボールド体 ⌘ B **bold**
イタリック体 ⌘ I *italic*
コード ⌘ D `code`
見出し 1 (一番大きい) ⌥⌘ 1 #
見出し 2 ⌥⌘ 2 ##
見出し 3 ⌥⌘ 3 ###
リンク ⌘ K <href>
Rチャンク ⌥⌘ I ```{r}

文字の装飾

  • Formatの右側のプルダウンからも他の種類の文字の装飾を選択できる(下線,上付き,下付き,取り消し線なども可能)。

Insert

  • Insertのプルダウンメニューから様々な挿入ができる。

Executable Cell

  • Insert -> Executable Cellでコードチャンクを挿入できる(RからJuliaまで挿入可,MermaidとGraphVizはダイアグラムを描く,コードチャンクの詳細は後述)。

MermaidとGraphviz

  • MermaidとGraphvizは,ダイアグラムを描くソフトでQuartoで使える。

  • SEMや因果ダイアグラムを描く時に便利(詳細こちらを参照)

sem 説明変数 説明変数 アウトカム アウトカム 説明変数->アウトカム 媒介変数 媒介変数 説明変数->媒介変数 媒介変数->アウトカム

表,画像,リンク,動画などの挿入

  • こちらのプルダウンメニューからも各種挿入ができる。

  • Shortcodeは以下のように動画の挿入したり,WordやPDFでの改ページ(pagebreak)の指定ができる。

引用,相互参照,脚注

  • Citationで文献の引用,Cross Referenceで図表や節などの相互参照,Footbnoteで脚注をいれることができる。

文献の引用

  • Insert -> Citationで,以下の画面が立ち上がる。DOIやPubmed検索から文献を簡単に登録できる。

  • 文献は@kunisato2023 だとKunisato et al.(2023) となり,[@kunisato2023] だと(Kunisato et al., 2023)となる。

数式,定義,特殊文字の挿入

  • LaTeX MathでLatex形式で数式が挿入できる(文章内に挿入するInlineと数式だけの行をつくるDisplayがある)。

  • 定義は用語説明に使えるが利便性が不明,特殊文字を入れたい場合はSpecial Charactersから挿入する。

パラグラフ,Div,水平線

  • パラグラフ(p)とDivはHTMLで使われるものでHTMLで特殊な装飾をしたい場合に使える,Horizontal Ruleで水平線を入れられる。

タブ化,コールアウト

  • Tabsetで文章やコードをタブ化でき,CalloutでTipsや警告などの表示を出すことができる。

タブ化

  • Tabsetをクリックして,必要な数のタブ名を設定する。

こんな感じになる。

コールアウト

  • tip, important, caution, warningから1つ選ぶ。

  • 見た目をdefault, simple, minimalから1つ選ぶ。

Quartoの使い方(tip)

Quartoの使い方としては・・・1つ目としては・・・

Quartoの使い方(important)

Quartoの使い方は・・・1つ目としては・・・

Quartoの使い方(caution)

Quartoの使い方は・・・1つ目としては・・・

Quartoの使い方(warning)

Quartoの使い方は・・・1つ目としてはデータ解析の報告書の作成がある・・・

Quartoの使い方(warning,simple)

Quartoの使い方は・・・1つ目としてはデータ解析の報告書の作成がある・・・

Quartoの使い方(warning,minimal)

Quartoの使い方は・・・1つ目としてはデータ解析の報告書の作成がある・・・

コメント

  • レポートには残したくないメモなどはコメントで残す。<!--# -->が挿入されるので,#より後ろにコメントを残す。

挿入のショートカット

  • 挿入は,本文で/ をタイプすることでも可能。

表の挿入

  • TableのプルダウンメニューからInsert Tableをクリックする。

  • 行数と列数を指定する。作った表を選択した状態でTableのプルダウンメニューを見ると表の変更が可能になる。

チャンクオプション

  • Rmdファイル内のRコードは,Rコードを表示する・しない,Rコードを実行する・しない,コードの結果を表示する・しないなど,色々と調整したいところ。

  • Rチャンクには,オプションがあり,Rコードとその結果の扱いや図のサイズなどについても指定できる。

  • Rコードのチャンクを参照するための名前をつける場合は,labelを使う。

チャンクオプション(Rコード)

eval コードの実行(falseはコード表示のみ)
echo コードの表示
output 実行した結果の表示(true, false, と asisasis はmarkdownのままを出す場合)
warning 警告の表示
error エラーの表示(エラーがでても処理継続)
include コードと結果の表示(falseならすべての出力が抑制される)

チャンクオプション(figure)

fig-width 図の幅(単位はインチ)
fig-height 図の高さ(単位はインチ)
fig-cap 図のキャプション
fig-subcap 図のサブキャプション
out-width 出力されるドキュメントでの図の幅(図は出力先で調整されるのでfig-widthとは異なる。デフォルトはpxだが,cm, mm, in, inch, %の単位が使える)
out-height 出力されるドキュメントでの図の高さ(図は出力先で調整されるのでfig-widthとは異なる。デフォルトはpxだが,cm, mm, in, inch, %の単位が使える)
  • コード表示,コード実行,結果表示の場合(out-でサイズも調整)

plot(1:100,rnorm(100,1,1))

  • コード表示しない,コード実行,結果表示

  • コード表示,コード実行しない,結果も表示しない(できない)

plot(1:100,rnorm(100,1,1))
  • チャンクオプションを駆使することで,ドキュメント内で必要なものだけを掲載できる。

演習

実際にqmdファイルを作って,データを読み込んで,Rのコードを実行してみましょう。

Data Journal

データを掲載するジャーナルも増えてきている。

今回使用するデータ

  • 以下の論文のデータを使う。

Woodworth, R. J., O’Brien-Malone, A., Diamond, M. R., & Schüz, B. (2018). Data from, “Web-based Positive Psychology Interventions: A Reexamination of Effectiveness.” Journal of Open Psychology Data. https://doi.org/10.5334/jopd.35

  • データは以下のfigshareで公開されている。

https://figshare.com/articles/dataset/A_randomized_placebo-controlled_trial_of_positive_psychology_interventions_in_Australia/1577563/1

対象者:一般参加者295名

介入:3つのポジティブ心理学的介入と統制条件に無作為割付。(1)“Using Signature Strengths(ウェブサイトで性格の強みを評価し,上位の強みのうちの1つを次の週に新しい別のやり方で実施する)”,(2)“Three Good Things(その日に起こった良いことを3つあげて,なぜそれが起こったのか原因説明とともに記録する)”, (3)“Gratitude Visit(親切してくれたけど感謝を示してない人に手紙を書く介入)”,(4)“Recording early memories(統制条件,幼いころの記憶を書く)”

アウトカム:Authentic Happiness Inventory (AHI) の24項目,Center for Epidemiological Studies Depression(CES-D) scaleの20項目

測定時期:介入前(0), 介入後(1), 1週間後(2), 1ヶ月後(3),3ヶ月後(4),6ヶ月後(5)

Woodworth et al.(2018)のデータにアクセスして,ファイルをダウンロードして開く。作成したプロジェクト内のdataフォルダ内にparticipant-info.csvとahi-cesd.csvを配置する。

データの読み込み(qmdに書き込もう!)

  • データの読み込み,データの前処理,可視化などはtidyverseパッケージ使うと便利。

  • dataフォルダに保存したWoodworth et al.(2018)のデータを読み込む。データはcsv形式だったので,read_csv()で読み込む。ファイルはdataフォルダにいれているので,ファイル名の前に”data/“をいれる(フォルダを指定できる)。

library("tidyverse") 
participant <- read_csv("data/participant-info.csv")
data <- read_csv("data/ahi-cesd.csv") 

動作確認

  • qmdだと以下のような感じになる。Rチャンク右端の緑の三角形をクリックするとコードが実行されるので,クリックする。

データの確認

  • コードを実行するとEnvironmentにオブジェクトが保存される。右端のアイコンをクリックするとオブジェクト(今回はデータ)を見ることができる。
  • participant-info.csvには,id, intervention, sex, age, educ, incomeのデータが入っている。
  • ahi-cesd.csvには,id, occasion, elapsed.days, intervention, ahi01…などのデータが入っている。

データフレーム

  • Rではデータフレームという構造でデータを扱う。データフレームは,a行b列からなる表形式のデータであり,列には変数が含まれる。

  • read_csv()で読み込んだデータはデータフレームになっており,オブジェクト名を打つとデータフレームが表示される。

データ型

  • Rでの代表的なデータ型としては以下がある(read_csv()で読み込むと自動で判定をする)。
データ型 説明 省略形
logical 論理型(TRUE, FALSE) lgl
integer 整数型(1,2) int
double 倍精度小数点型 (1.0,2.1) dbl
character 文字型 chr
factor 因子型 fct
ordered 順序型 ord
Date 日付型 date
  • パイプ演算子でつなぐと前の処理の内容が次の処理に引き継がれるので,可読性高くコードが書ける。

  • |> はTools -> Global options -> Codeで,Use native pipe operator…にチェックをいれてApplyすればRStudioで使える。

Windowsは Ctrl + Shift + m Macは Command + Shift + mのショートカットでパイプ演算子が入力できる。

記述統計 (qmdに書き込もう!)

  • 連続変数に関しては,summary()で必要な記述統計を出すことができる(selectで必要なものを選択すると便利)。
participant |> 
  select(age, educ, income) |> 
  summary()
      age             educ          income     
 Min.   :18.00   Min.   :1.00   Min.   :1.000  
 1st Qu.:34.00   1st Qu.:3.50   1st Qu.:2.000  
 Median :44.00   Median :4.00   Median :2.000  
 Mean   :43.76   Mean   :3.98   Mean   :2.044  
 3rd Qu.:52.00   3rd Qu.:5.00   3rd Qu.:3.000  
 Max.   :83.00   Max.   :5.00   Max.   :3.000  

クロス集計(qmdに書き込もう!)

  • 質的変数の場合は,table()でクロス集計を出すことができる。selectで性別絞ってクロス集計を出すと,女性が多いことが分かる。
participant |> 
  select(sex) |> 
  table()
sex
  1   2 
251  44 

記述統計の要約表(qmdに書き込もう!)

  • gtsummary パッケージのtbl_summary()を使うと簡単に変数の要約ができる(byでグループ分けして表にできる)
  • gtsummary()の調整法としては,こちらが参考になる。
library(gtsummary)
participant |>
  select(-id) |> 
  tbl_summary(by = intervention)
Characteristic 1, N = 721 2, N = 761 3, N = 741 4, N = 731
sex
    1 62 (86%) 66 (87%) 62 (84%) 61 (84%)
    2 10 (14%) 10 (13%) 12 (16%) 12 (16%)
age 45 (36, 54) 46 (36, 53) 44 (34, 51) 40 (32, 51)
educ
    1 3 (4.2%) 3 (3.9%) 2 (2.7%) 6 (8.2%)
    2 3 (4.2%) 8 (11%) 3 (4.1%) 7 (9.6%)
    3 10 (14%) 7 (9.2%) 7 (9.5%) 15 (21%)
    4 26 (36%) 32 (42%) 32 (43%) 14 (19%)
    5 30 (42%) 26 (34%) 30 (41%) 31 (42%)
income
    1 21 (29%) 20 (26%) 17 (23%) 15 (21%)
    2 31 (43%) 34 (45%) 36 (49%) 35 (48%)
    3 20 (28%) 22 (29%) 21 (28%) 23 (32%)
1 n (%); Median (IQR)

ggplot2で可視化しよう!

  • データの可視化は,(1)データに対する前処理が適切にできているかチェック,(2)データの測定法が適切にできているかチェック,(3)データの傾向をチェック,(4)データに適用する統計手法が適切かチェックするために行う。
  • Rのggplot2パッケージがきれいに図が作成できて,コードも読みやすく書ける。
  • ggplot2は,グラフィックの文法 (grammar of graphics)という思想の元に作成されている。これは,有る決まった構造で作成されたレイヤーを重ねていって図を作成するという考え方。

ヒストグラム(qmdに書き込もう!)

  • 量的な変数はヒストグラムで分布を確認

  • occasion=0のCES-D得点のヒストグラムを描く。filterでoccasion=0に絞り込んで,パイプ演算子でfilterされたdataをggplotに入れて,aesでx軸を指定する。

data |> 
  filter(occasion == 0) |> 
  ggplot(aes(x=cesdTotal)) +
  geom_histogram(aes(y=after_stat(density)),fill='white', color='black') +
  geom_density(fill='black', alpha = 0.5) +
  theme_classic() +
  scale_y_continuous(expand=c(0,0)) +
  labs(x = "CES-D", y="") 

  • geom_histogram()でヒストグラムが描けるが,theme_classic()にしたり,グラフが浮かないようにしたり,x軸のラベルを変えたり調整。密度プロット(density plot)も追加する。

レインクラウド(qmdに書き込もう!)

  • 箱ひげ図,バイオリンプロット,ドットプロットを組み合わせたものとして,レインクラウドプロットがある。ggdistパッケージで描ける。
  • stat_halfeye()でバイオリンプロットの半分を描いてから,stat_dotsでドットプロット追加し,geom_boxplotで箱ひげ図を追加する。
library(ggdist)
data |> 
  filter(intervention == 3 | intervention == 4) |> 
  filter(occasion == 0) |> 
  mutate(intervention2 = ifelse(intervention == 3,"Gratitude Visit","Recording early memories")) |> 
  ggplot(aes(x = intervention2, y = cesdTotal)) +
  stat_halfeye(width = .5, justification = -.15,point_color = NA, .width = 0) +
  stat_dots(side = "left", dotsize = 1, justification = 1.1, binwidth = 1) +
  geom_boxplot(width = .1,outlier.shape = NA) +
  theme_classic() +
  labs(x = "Intervention", y = "CES-D") +
  coord_cartesian(clip = 'off', xlim = c(1, 2))

HTMLを共有する際の工夫

  • HTMLファイルは便利ですが,他の人と共有する際に,画像などの各種ファイルも同時に共有する必要がある(面倒だし,メールで送れない)。

  • qmdファイルのYAMLの”format: html”を以下に変更するとHTMLファイルに画像などを埋め込んでくれる。

format:
  html:
    embed-resources: true
    toc: true
    toc-depth: 2

Quartoを日常使いしよう!

  • 可視化までしか扱ってないが,基本的な Quartoドキュメントの使い方は変わらない。文章を書いて,適宜装飾し,Rコードを実行し,適宜チャンクオプションで指定する。
  • 今回省略した前処理と可視化の詳細はこちらを参照ください。

解析報告書以外の活用法

  • プレゼンテーションスライド

  • ウェブサイト

  • 論文

プレゼンテーション

  • Quartoでプレゼンスライドも作れる(このスライドもQuartoで作成している)。

  • Rの解析結果が含まれるような研究の場合は,Quartoで作成するのも便利(変にスライドにこだわらなくなるのも良い)

  • 作成法:新規作成からQuarto Presentationを選択して,revealjs (reveal.js, HTML), pptx (MS Power Point), beamer (Beamer, LaTeX/PDF)の3つから1つを選ぶ。

ウェブサイト

  • File -> New Project…-> New DirectoryでQuarto Websiteを選ぶ。

  • 既にあるqmdファイルに加筆し,新規作成したqmdファイルを_quarto.yml に追加するなどしてウェブサイトを作る。

  • BuildのRender Websiteでウェブサイト全体のRenderを行う。

  • File -> New Project…-> New DirectoryでQuarto Websiteを選ぶ。

  • 既にあるqmdファイルに加筆し,新規作成したqmdファイルを_quarto.yml に追加するなどしてウェブサイトを作る。

  • BuildのRender Websiteでウェブサイト全体のRenderを行う。

  • 国里のゼミではRmdで卒論を書くので,それをまとめてbookにしてゼミ論集にしています(今後はQmdに移行予定)。

Quartoを使った論文執筆方法

Quartoの学術雑誌テンプレート

  • Quarto Journal Templatesには,複数のジャーナル/出版社用のテンプレートが用意されている。
Journal / Publisher Name Install
Association of Computing Machinery acm quarto use template quarto-journals/acm
American Chemical Society acs quarto use template quarto-journals/acs
American Geophysical Union agu quarto use template quarto-journals/agu
Biophysical journal biophysical-journal quarto use template quarto-journals/biophysical-journal
Elsevier Journals elsevier quarto use template quarto-journals/elsevier
American Statistical Association Journals jasa quarto use template quarto-journals/jasa
Journal of Statistical Software jss quarto use template quarto-journals/jss
Public Library of Science plos quarto use template quarto-journals/plos

Quarto Journal Templatesを使う

  • RStudioのTerminalタブにQuarto Journal Templatesから選んだジャーナル/出版社のInstallコマンドを貼り付ける(なお,事前にカレントワーキングディレクトリを確認する)。

Quarto Journal Templatesのインストール

  • 「Do you trust the authors of this template」にY,「Directory name:」に好きなディレクトリ名をつける(ただし,英数字で名前をつける)

PLOS ONEテンプレート

  • PLOS ONE用のテンプレートのqmdファイルを開く。

  • 本来は自分用に改変をするが,まずはRenderする。

PLOS ONEテンプレートの出力

  • PDF形式で美しく出力される。

A Quarto Extension for Creating APA 7 Style Documents

quarto use template wjschne/apaquarto

オリジナルテンプレート作成

  • Quarto Journal Templatesにない場合は,自分でオリジナルテンプレートを作成する(共有すれば他の人も使える)。

  • オリジナルテンプレートを作成する場合,Githubのarticle-format-templateをコピーして使うのが良さそう。

jpaRmd

  • jpaRmdは,R Markdownで論文を書くためのテンプレートパッケージ。

  • 心理学研究などに投稿可能な形式で美しいPDFが出力される(Kosugittiのいぶし銀Rコードにより完璧な引用文献リストが作成できる!)。

→困る点:共著者や英文校閲者がwordのコメント機能を使うとなるとPDFが不便,LaTeXベースなので美しさを重視して行数が投稿規定からずれることがある,最終的に出版社からwordを求められる…wordに変換する時チョット泣いた…

完璧なものより使えるものを

  • PDFで美的なフォーマットにこだわるのをやめる!

  • 最近は雑誌/出版社がWordテンプレートを出していたりするので,Wordテンプレートに合わせてWordを出力するようにしたい。

Japanese Psychological Research用テンプレート

JPRテンプレートの使い方

  • RStudioのTerminalで以下を打ち込む。
quarto use template ykunisato/jpr
  • “jpr_paper.qmd”を開いて,適宜書き込む(学会が提供するWord Templateのコメントも追加しているので参照ください)。

  • Renderをクリックして,Word出力して確認する。

なお,心理学研究用のテンプレートのjjpも作成している。

オリジナルテンプレートを作る方法(1):マニア用

GitHubアカウントを作成して,https://github.com/quarto-journals/article-format-template にアクセスする。

オリジナルテンプレートを作る方法(2):マニア用

  • 「Create a new repository」をクリックする。

オリジナルテンプレートを作る方法(3):マニア用

  • Repository nemeを指定し,「Create repository」をクリックする。
  • 出力によって変わるが,テンプレートのqmdファイルやbibファイルなどを用意してGithubにアップロードすると利用可能になる。

引用文献

Baker, Monya. 2016. “1,500 Scientists Lift the Lid on Reproducibility.” Nature 533 (7604): 452–54. https://doi.org/10.1038/533452a.
“Estimating the Reproducibility of Psychological Science.” 2015. Science 349 (6251). https://doi.org/10.1126/science.aac4716.
Goodman, Steven N., Daniele Fanelli, and John P. A. Ioannidis. 2016. “What Does Research Reproducibility Mean?” Science Translational Medicine 8 (341). https://doi.org/10.1126/scitranslmed.aaf5027.
Ioannidis, John P. A. 2005. “Contradicted and Initially Stronger Effects in Highly Cited Clinical Research.” JAMA 294 (2): 218. https://doi.org/10.1001/jama.294.2.218.
Iqbal, Shareen A., Joshua D. Wallach, Muin J. Khoury, Sheri D. Schully, and John P. A. Ioannidis. 2016. “Reproducible Research Practices and Transparency Across the Biomedical Literature.” Edited by David L Vaux. PLOS Biology 14 (1): e1002333. https://doi.org/10.1371/journal.pbio.1002333.
Stodden, Victoria, Jennifer Seiler, and Zhaokun Ma. 2018. “An Empirical Analysis of Journal Policy Effectiveness for Computational Reproducibility.” Proceedings of the National Academy of Sciences 115 (11): 2584–89. https://doi.org/10.1073/pnas.1708290115.
Wallach, Joshua D., Kevin W. Boyack, and John P. A. Ioannidis. 2018. “Reproducible Research Practices, Transparency, and Open Access Data in the Biomedical Literature, 20152017.” Edited by Ulrich Dirnagl. PLOS Biology 16 (11): e2006930. https://doi.org/10.1371/journal.pbio.2006930.