web-dev-qa-db-ja.com

RStudioを使用してワークスペースから直接マークダウンをknitrする方法はありますか?

knitrマークダウンを使用して、現在のワークスペースから派生したオブジェクトを含むレポートを即座に作成できるかどうか疑問に思います。ここでは再現性は問題ではありません。私もこれをとても読みやすくしています ここのスレッド

しかし、それでも特定のオブジェクトが見つからなかったというエラーメッセージが表示されます。

1)新しいマークダウンドキュメントを開いて保存するとします。

2)ワークスペースのlmオブジェクトを参照するチャンクを書き込みます。呼び出しsummary(mylmobject)

3)knitrそれ。

残念ながらレポートは生成されますが、オブジェクトが見つからなかったため、回帰出力を表示できません。注:オブジェクトを.Rdataに保存し、それをマークダウンファイルから直接読み込むだけで、通常は機能します。

現在のワークスペースにあるRマークダウンでオブジェクトを使用する方法はありますか?これは、Rを使用していない人に、作業中に出力を表示するのに最適です。

26
Matt Bannert

RStudioは、newRセッションをknit()へのRマークダウンファイルに開くため、現在の作業スペース内のオブジェクトは、そのセッション(2つの別々のセッションです)。 2つのソリューション:

  1. 強制的に新しいセッションを開始するのではなく、現在のRセッションで編成をサポートするように依頼する 機能リクエスト をRStudioに送信します。
  2. 自分で手動で編成する:library(knitr); knit('your_file.Rmd')(またはknit2html() HTML出力を1ステップで実行する場合はrmarkdown::render()を使用する場合 R Markdown v2
32
Yihui Xie

以下を使用して、他のセッションからデータを保存する方が簡単な場合があります。

save.image("C:/Users/Desktop/example_candelete.RData")

それをMDファイルにロードします。

load("C:/Users/Desktop/example_candelete.RData")
27
mmann1123

Markdownreportsパッケージ は、マークダウンドキュメントをその場で解析するために設計されています。

0
bud.dugong

Julien Colombがコメントしたように、この状況で行う最善の方法は、大きなオブジェクトを保存し、マークダウンを調整している間に明示的にロードすることです。これは、データがODBCを介して送信され、フォントやテーマをいじくり回してクエリ全体を繰り返し実行したくない場合に必要です。

0
CClarke