web-dev-qa-db-ja.com

RマークダウンでRコードブロックをコメントアウトする方法

多くのRコードブロックを含むRマークダウンファイル(.Rmd)を編集して、それらのコードブロックのグループを「子」ドキュメントに移動して、セクションの再配置を簡略化します(他にない場合)。セクションを子ドキュメントに変換するときに、残りのブロックや他の子を実行せずに新しい子ドキュメントをテストしたいと思います。ただし、これらのセクションをコメント化するために使用すると、Rブロックは引き続き実行されます(ただし、RStudioによって、セクションはコメント化されているかのように「見えます」。

前後の「 `` `」(つまり、コードブロックの記号)を削除すると、コメントは正常に機能します。ただし、先ほど述べたように、コードブロックがたくさんあるので、もっと便利だと思います。

では、Rコードブロックをコメントアウトして実行されないようにするにはどうすればよいですか?

RStudioでRコードチャンクの(少なくとも)1行から(少なくとも)Rコードチャンクの最後の行にハイライトする1 次に、ctrl-shift-C(OSXまたはWindowsの場合)またはcommand-shift-C(OSXのみ)を入力すると、RStudioはhtmlコメントタグをチャンクに配置します。

例えば:

```{r cars}
summary(cars)
plot(pressure)
```

これを強調表示してctrl-shift-Cと入力すると、次のようになります。

<!-- ```{r cars} -->
<!-- summary(cars) -->
<!-- plot(pressure) -->
<!-- ``` -->

複数のチャンクを選択的にコメントアウトするには、正規表現オプションをオンにしてRStudioの検索/置換ツールを使用できます。 2つの置換ステップが必要です(おそらく1つのステップで実行できますが、RStudioで複数行にわたってキャプチャする正規表現を実行する方法がわかりません)。

ステップ1:1つ以上のチャンクの最初の行をコメント化します。

検索:(```{r.*)
交換:<!--\1

ステップ2:1つ以上のチャンクの最後の行をコメント化します。

検索:(```)$
交換:\1-->


1チャンクの上の行をハイライトに含める必要があります。それ以外の場合、RStudioはRコメントタグ(#)チャンクの各行の先頭とコメント行は、出力ドキュメントではプレーンテキストとして表示されます。

11
eipi10

Rmarkdownドキュメントでは、特定のオプションを各Rコードチャンクに適用して、内部のコードを実行、印刷、エラーメッセージを表示するかどうかを決定できます。

特定のコードチャンクを実行しないようにするには、次を使用します。

```{r cars, eval=FALSE}
summary(cars)
```

特定のコードチャンクが実行されない、または作成されたドキュメントに出力されないようにするには、次を使用します。

```{r cars, eval=FALSE, echo=FALSE}
summary(cars)
```

「TRUE」は反対の効果に使用され、デフォルトです。

コメントアウトする必要のあるコードチャンクが多数ある場合は、@ eipi10から提案を受け取り(感謝)、正規表現オプションを選択して検索/置換を使用できます。したがって、検索結果は "(` `` {r。*) "になり、置換は"\1、eval = FALSE、echo = FALSE} "(二重引用符なし)になります。

4
www