CRAN Task View: Reproducible Researchの英語での説明文をGoogle翻訳を使用させていただき機械的に翻訳したものを掲載しました。

Maintainer: John Blischak, Alison Hill, Ben Marwick, Daniel Sjoberg, Will Landau
Contact: jdblischak at gmail.com
Version: 2022-11-11
URL: https://CRAN.R-project.org/view=ReproducibleResearch
Source: https://github.com/cran-task-views/ReproducibleResearch/
Contributions: このタスクビューに対する提案や改良は、GitHubのissueやpull request、またはメンテナのアドレスに電子メールで送ってください。詳しくはContributing guideをご覧ください。
Installation: このタスクビューのパッケージは、ctvパッケージを使用して自動的にインストールすることができます。例えば、ctv::install.views(“ReproducibleResearch”, coreOnly = TRUE)は全てのコアパッケージをインストールし、ctv::update.views(“ReproducibleResearch”)はまだインストールしていない全てのパッケージと最新のものをインストールすることが可能です。詳しくはCRAN Task View Initiativeをご覧ください。

再現性のある研究の目標は、特定の指示をデータ解析や実験データに結びつけ、学問を再現し、よりよく理解し、検証できるようにすることです。この目的のためのRのパッケージは、リテラートプログラミング、パイプラインツールキット、パッケージの再現性、プロジェクトのワークフロー、コード/データフォーマットツール、フォーマットコンバータ、オブジェクトキャッシングのグループに分けることができます。

現在のメンテナは、このタスクビューを最初に作成し、維持したMax Kuhnに感謝します。

読み書きできるプログラミング

Rで再現性の研究を促進する主な方法は、コンテンツとデータ解析コードの組み合わせである文書を使用することです。Sweave関数(base R utiles パッケージにある)とknitrは、単一のドキュメントが、コンテンツおよび分析を定義するように、主題とRコードをブレンドするために使用することができます。brewR.rspは、様々なマークアップにRコードを埋め込むの代替的なアプローチが含まれています。

読み書きできるプログラミングのためのリソースは、最高のドキュメントタイプ/マークアップ言語によって編成されています。

LaTex

Sweaveとknitrの両方は、LaTeXファイルを処理することができます。lazyWeaveは、最初からLaTeX文書を作成することができます。

knitrおよびrmarkdown(およびpandoc)は、LaTeX beamerクラスを使用してスライドを作成するために使用できます。

HTML

knitrは、HTMLファイルを直接処理することができます。Sweaveもまた、R2HTMLを経由してHTMLを操作することができます。lazyWeaveは、最初からHTML形式のドキュメントを作成することができます。

HTMLスライドの場合、knitrrmarkdownの組み合わせ(pandocとともに)を使用して、ioslidesまたはreveal.jsSlidy、またはremark.jsxaringanから)を使用してスライドを作成できます。

blogdownbookdowndistillというパッケージは、Webサイト全体を作成することができます。

変換関数オブジェクト:

その他のツール:

htmltoolsは、HTMLを操作するためのさまざまなツールを持っています。タフティスタイルの配布資料を作成するためのtufterhandout

Markdown

knitr は、支援なしでmarkdownファイルを処理することができます。markdownrmarkdownは、この形式で文書を操作するための一般的なツールを持っています。lazyWeaveは、最初からマークダウン形式の文書を作成することができます。また、asciiはRオブジェクトをAsciiDoc形式で書き込むことができます。

変換関数オブジェクト:

その他のツール:

タフティスタイルの配布資料を作成するためのtufterhandoutkfigrは、マークダウンドキュメント内の数字のインデックス作成を可能にします。

Microsoft / LibreOffice フォーマット

officer(以前のReporteRおよびそのR2DOCX以前)は、docxおよびpptxファイルを作成できます。 R2wd(Windowsのみ)はWord文書を最初から作成することもでき、R2PPT(Windowsのみ)はPowerPointスライドを作成することもできます。 rtfは、リッチテキスト形式のドキュメントに対して同じことを行います。 openxlsxは、xlsxファイルを作成します。readODSは、Open DocumentSpreadsheetsの読み取りと書き込みを行うことができます。

変換関数オブジェクト:

パイプラインツールキット

Pipeline toolkitsは、再現性の維持と検証に役立ちます。パイプラインツールキットは、計算結果を基礎となるコードやデータと同期させ、すべてが最新の状態であることをユーザーに伝えます。言い換えれば,出発材料から結果を再現できるという具体的な証拠を提供し,データ解析プロジェクトを一からやり直す必要がないようにします。パイプラインツールキットとして、targetsがあります。GNU Makeに似ていますが、Rに特化しています。

  • drake:データ分析用の汎用計算エンジン。drakeは、依存関係が変化すると中間データオブジェクトを再構築し、結果が既に最新の場合は作業をスキップします。
  • flowr:このフレームワークを使用すると、複雑なパイプラインを設計して実装し、機関のコンピューティングクラスターに展開できます。
  • makepipe: 既存のワークフローを、最小限の初期費用で自己文書化されたパイプラインに変換するためのツール群。
  • repo:ファイルシステムとの間でのデータの手動による保存/取得を回避するためのデータマネージャー。
  • targets:R言語による統計・データサイエンスのためのパイプラインツールキットとして、「targets」パッケージは、関数指向のプログラミングと「Make」のような宣言型ワークフローを統合しています。

パッケージの再現性

Rには、解析に必要な特定のパッケージのバージョンを確保するための様々なツールがあります。例えば、renvパッケージは、プロジェクト固有のディレクトリにパッケージをインストールし、現在のパッケージのバージョンの「スナップショット」を「ロックファイル」に記録し、別のマシンでパッケージのセットアップを復元します。

  • checkpoint :CRANのタイムマシンを持っているかのように、特定のスナップショットの日付にCRANに存在していたパッケージをインストールすることができます。
  • groundhog:パッケージに依存するRスクリプトの再現性を高めるために、あるスクリプトが実行されるたびに、使用されるパッケージの同じバージョンがロードされるようにします。
  • liftr:R Markdown文書のコンテナ化による持続的な再現性のある報告。
  • miniCRAN:CRANのようなリポジトリから選択されたパッケージで構成された、内部的に一貫性のあるリポジトリを作成することを可能にします。
  • packrat:あなたのプロジェクトが依存しているRパッケージを、分離、移植、再現可能な方法で管理します。
  • rbundler:依存性パッケージのインストールのためのプロジェクト固有のライブラリを管理します。
  • renv:プロジェクトローカルのRライブラリを作成・管理し、これらのライブラリの状態を「ロックファイル」に保存し、後で必要に応じてライブラリを復元します。
  • Require (archived):再現性のあるワークフローを可能にする「install.packages」「remotes::install_github」「version::install.version」「base::require」をラップした「Require」という1つのキーとなる機能があります。
  • switchr:インストールされたRパッケージのセットを管理、インストール、切り替えするための抽象化機能を提供します。

プロジェクトのワークフロー

データ分析プロジェクトを成功させるには、多くの場合、統計と視覚化以上のものが必要です。プロジェクトの成熟に合わせてコード、データ、結果を効率的に管理することで、ストレスやエラーを減らすことができます。以下の「workflow」パッケージは、プロジェクトインフラストラクチャを管理したり、再現可能なワークフローを促進したりすることにより、Rプログラマを支援します。

ワークフローユーティリティパッケージは、プロジェクトインフラストラクチャを実装したり、特定の問題を解決するための使い捨て機能を提供します。典型的な例として、usethis :: use_git()はGitリポジトリを初期化し、一般的なRファイルを無視し、すべてのプロジェクトファイルをコミットします。

  • cabinets:.Rprofileファイルに書き込まれるプロジェクト固有のディレクトリおよびファイルテンプレートを作成します。
  • here:プロジェクトのファイルへのパスを作成します。
  • prodigenr:そのプロジェクトの典型的なファイルとともに、プロジェクトのディレクトリ構造を作成します。
  • RepoGenerator:RワークショップのGitHubリポジトリの初期化を簡単にするためのプロジェクトとリポジトリを生成します。
  • rrtools(GitHub only):Rで再現性のある研究を行うのに適した基本的な概要を作成するための指示、テンプレート、および機能。
  • スターター(GitHub only):教育、プレゼンテーション、分析、パッケージ開発のためにRプロジェクトディレクトリを設定するのは面倒です。これは、フォルダー構造を作成し、適切なデフォルトを設定することにより、これをショートカットします。
  • usethis:手動で実行されるパッケージおよびプロジェクトのセットアップタスクを自動化します。

ワークフローフレームワークパッケージは、プロジェクトの開発中に役立つ整理されたディレクトリ構造とヘルパー機能を提供します。典型的な例として、ProjectTemplate :: create.project()は多くのサブディレクトリで組織化されたセットアップを作成し、ProjectTemplate :: run.project()はsrc /サブディレクトリに保存されている各Rスクリプトを実行します。

  • exreport:インタラクティブHTMLとLaTeXの両方での実験結果の分析と自動レポート生成。
  • madrat:データ処理の再現性と透明性を改善するフレームワークを提供します。自動メタデータの作成と管理、基本的な品質管理、データキャッシング、ワークフロー管理、データ集約などの機能を提供します。
  • makeProject:このパッケージは、Josh Reichによって記述された「Load、Clean、Func、Do」構造のファイルとディレクトリの空のフレームワークを作成します。
  • orderly:Rからレポートを注文、作成、保存。
  • projects:原稿の作成に焦点を当てたプロジェクトインフラストラクチャを提供します。
  • ProjectTemplate:新しいRプロジェクトのディレクトリ構造を自動的に構築する機能を提供します。この構造を使用して、「ProjectTemplate」はデータの読み込み、前処理、ライブラリのインポート、および単体テストを自動化します。
  • reportfactory: 複数のR Markdownレポートを扱うためのインフラを提供します。これには、出力の自動キュレーションとタイムスタンプ、パラメータ化、依存関係を管理するヘルパー関数の提供などが含まれます。
  • represtools:再現可能な調査ツールは、分析ディレクトリ構造とワークフローの作成を自動化します。典型的な分析ワークフローステップをカプセル化するRマークダウンスケルトンがあります。関数は、あるステップから別のステップにデータを渡すことができる適切なモジュールを作成します。
  • tinyProject:データ分析プロジェクトに役立つファイルとフォルダーを作成し、データ、スクリプト、および出力ファイルを管理する機能を提供します。
  • worcs:「R」で再現性のある透明な研究プロジェクトを作成します。このパッケージは、オープンサイエンスのベストプラクティスに基づいた段階的な手順である、科学におけるオープン再現性コードのワークフロー(WORCS)に基づいています。
  • workflowr:リテラシープログラミング(「knitr」と「rmarkdown」)とバージョン管理(「git2r」を介した「Git」)を組み合わせて、タイムスタンプ、バージョン、および文書化された結果を含むWebサイトを生成することにより、分析プロジェクトのワークフローを提供します。
  • zoon:再現可能で再混合可能な種の分布モデリング。

書式設定ツール

formatRstyler は,Rコードのフォーマットに使用できます。

highlighthighrは、カラーRコードに使用できます。

humanFormatlubridateprettyunitsrprintfは、より優れた形式のデータに関数を持っています。

フォーマットコンバータ

panderは、Pandoc’sマークダウンにRオブジェクトをレンダリングするために使用することができます。knitrは、Markdown、HTML、LaTex、PDF、Wordのようなフォーマット間のドキュメントを変換するためのPandocのインストールされたバージョンを呼ぶことができるpandoc関数を持っています。tthは、TeXからHTML / MathMLへの変換を容易にします。

オブジェクトキャッシュパッケージ

Sweaveとknitrを使用する場合、ドキュメントが再処理されるなら(すなわち、デバッグ中)、それは時間がかかるコードチャンクの結果をキャッシュすることが有利となります。knitrは、オブジェクトキャッシュを容易にし、BioconductorパッケージweaverはSweaveで使用することができます。

キャッシング/アーカイブを容易にする非識字プログラミングパッケージは、archivistR.cachereproducible (archived)storrです。

関連する記事

  • R ggplotに回帰直線の式を表示する方法R ggplotに回帰直線の式を表示する方法 R言語のggplotにおいて、グラフに回帰直線の式を表示する方法をお伝えします。 ggplotのグラフに回帰直線の式を表示する方法はいくつかあります。 ここでは最も簡単と思われるggpmiscパッケージを用いて回帰直線の式を表示する方法をお伝えします。 環境 今回の作業環境をsessionInfo()関数で確認しておきます。 > […]
  • 度数分布表とヒストグラム度数分布表とヒストグラム 数値データの集合をただ眺めても、そのデータの特徴をつかむのは大変難しい。しかし、そのデータを表にまとめたもの、またはグラフにすると一目瞭然だ。特に、グラフにしたものは、大変分かりやすい。表にまとめたものを度数分布表、グラフにしたものをヒストグラムという。 では、早速具体的に見ていく。 度数分布表 度数分布表とは、以下の表のことを言う。ここで用いたデータは、統計Rに付 […]
  • R データフレームのファクター列を2値に変換する方法 Rのデータフレームにおいて、ファクター列を2値に変換する方法をお伝えいたします。 方法はとても単純で、データフレームの列ごとにファクター型かどうかをチェックし、ファクター型であればファクターごとに2値の列を新たに作成し追加します。 ソースコードは以下のようになります。 convertFactorToBinary <- function(df, sep = […]
  • R実装と解説 対応のない2標本の母平均の差の検定(母分散が等しい) [latexpage] 母分散が等しい場合の対応のない2標本の母平均の差の検定とは、2つの母集団が正規分布に従い、ともに母分散が等しいと仮定できるとき、一方の母平均が他方の母平均と「異なる」または「大きい」、「小さい」かどうかを、検定統計量がt分布に従うことを利用して検定します。 統計的検定の流れ 検定の大まかな流れを確認しておきます。 […]
  • R言語 サンプルデータ一覧R言語 サンプルデータ一覧 R言語をインストールした際に、標準として準備されているサンプルデータの一覧をご紹介する。英語での説明文をBing翻訳またはGoogle翻訳を使用させていただいて翻訳したものを掲載した。サンプルデータを探す参考にしていただければ幸いだ。 標準で使用できるサンプルデータ AirPassengers Monthly Airline Passenger Numbers […]
R言語 CRAN Task View:再現性のある研究

R言語 CRAN Task View:再現性のある研究」への1件のフィードバック

コメントは受け付けていません。