サーチ…


構文

  1. <<内部コードチャンク名、オプション... >> =
    #Rコードここ
    @
  2. \ Sexpr {ここで#Rコード}
  3. <<外部読み込み-Rファイル>> =
    read_chunk( 'r-file.R')
    @

    <<外部コードチャンク名、オプション... >> =
    @

パラメーター

オプション詳細
エコー (TRUE / FALSE) - Rソースコードを出力ファイルに含めるかどうか
メッセージ (TRUE / FALSE) - Rソースの実行からのメッセージを出力ファイルに含めるかどうか
警告 (TRUE / FALSE) - Rソースの実行からの警告を出力ファイルに含めるかどうか
エラー (TRUE / FALSE) - Rソースの実行からのエラーを出力ファイルに含めるかどうか
キャッシュ (TRUE / FALSE) - Rソースの実行結果をキャッシュするかどうか
fig.width (数値) - Rソースの実行によって生成されたプロットの幅
fig.height (数値) - Rソースの実行によって生成されたプロットの高さ

備考

Knitrは自然言語(LaTeX形式)とソースコード(R形式)を織り交ぜるためのツールです。一般的に、自然言語とソースコードが散在しているという概念は、 識字プログラミングと呼ばれています 。 knitrファイルにはLaTeX(伝統的に.texファイルに格納されている)とR(伝統的に.Rファイルに格納されている)が混在しているため、R noweb(.Rnw)という新しいファイル拡張子が必要です。 .RnwファイルにはLaTeXとRコードが混在しています。

Knitrは、PDF形式の統計レポートの作成を可能にし、 再現性のある研究を達成するための重要なツールです。

.RnwファイルをPDFにコンパイルすることは、2つのステップのプロセスです。まず、Rコードをどのように実行し、LaTeXコンパイラが理解できる形式(「ニッティング」と呼ばれるプロセス)で出力をキャプチャするかを知る必要があります。これはknitrパッケージを使って行います。あなたがknitrパッケージインストールしたと仮定して、このコマンドを以下に示します

Rscript -e "library(knitr); knit('r-noweb-file.Rnw')

これにより、通常の.texファイル(この例ではr-noweb.texと呼ばれます)が生成されます。このファイルは、以下を使用してPDFファイルに変換できます。

pdflatex r-noweb-file.tex

ラテックスでのニットとコードの外部化によるR

Knitrは、RコードとLaTeXコードの混在を可能にするRパッケージです。これを実現する1つの方法は、外部コードチャンクです。外部コードチャンクを使用すると、R開発環境でRスクリプトを開発/テストし、その結果をレポートに含めることができます。これは強力な組織手法です。このアプローチを以下に示します。

# r-noweb-file.Rnw
\documentclass{article}
 
 <<echo=FALSE,cache=FALSE>>=
 knitr::opts_chunk$set(echo=FALSE,  cache=TRUE)
 knitr::read_chunk('r-file.R')
 @
 
\begin{document}
This is an Rnw file (R noweb).  It contains a combination of LateX and R.
 
One we have called the read\_chunk command above we can reference sections of code in the r-file.R script.

<<Chunk1>>=
@
\end{document}

このアプローチを使用するときは、以下に示すようにコードを別のRファイルに保存します。

## r-file.R
## note the specific comment style of a single pound sign followed by four dashes

# ---- Chunk1 ----

print("This is R Code in an external file")

x <- seq(1:10)
y <- rev(seq(1:10))
plot(x,y)

ラテックスのKnitrとインラインコードチャンクのR

Knitrは、RコードとLaTeXコードの混在を可能にするRパッケージです。これを実現する1つの方法は、インラインコードチャンクです。このapporachは下記のとおりです。

# r-noweb-file.Rnw
\documentclass{article}     
\begin{document}
This is an Rnw file (R noweb).  It contains a combination of LateX and R.

<<my-label>>=
print("This is an R Code Chunk")
x <- seq(1:10)
@

Above is an internal code chunk.
We can access data created in any code chunk inline with our LaTeX code like this.
The length of array x is \Sexpr{length(x)}.

\end{document}

Knitrと内部コードチャンクを持つLaTexのR

Knitrは、RコードとLaTeXコードの混在を可能にするRパッケージです。これを実現する1つの方法は、内部コードチャンクです。このapporachは下記のとおりです。

# r-noweb-file.Rnw
\documentclass{article}    
\begin{document}
This is an Rnw file (R noweb).  It contains a combination of LateX and R.

<<code-chunk-label>>=
print("This is an R Code Chunk")
x <- seq(1:10)
y <- seq(1:10)
plot(x,y)  # Brownian motion
@

\end{document}


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow