2013-06-03 5 views
5

knitrを使用するとdata.table[...]の変数を評価する際に問題があります。私はこの問題が解決したという答えを見てきましたが、まだエラーが出ています。私はdata.tableバージョン1.8.8をR 3.0.0で使用しています。ESSはdata.tableとknitrをうまく扱っていません

私はESS 13.05に付属のEmacs 24.3を使用しています。

\documentclass{article} 

\begin{document} 

<<init,eval=TRUE, cache=FALSE>>= 
require(data.table) 
dt <- data.table(x=1:10, y=11:20) 
dt 
dt[x > 5] 
@ 

\end{document} 

と対応する(PDF)出力:

require(data.table) 
## Loading required package: data.table 
## data.table 1.8.8 For help type: help("data.table") 
dt <- data.table(x = 1:10, y = 11:20) 

dt 
## x y 
## 1: 1 11 
## 2: 2 12 
## 3: 3 13 
## 4: 4 14 
## 5: 5 15 
## 6: 6 16 
## 7: 7 17 
## 8: 8 18 
## 9: 9 19 
## 10: 10 20 

dt[x > 5] 
## Error: object ’x’ not found 
+0

ジョシュ、チップのおかげで解決します。サンプル.Rnwファイルを追加しました。私はEmacsに依存してknitrを呼び出すので、直接呼び出すことはなく、どのように呼び出されているのか分かりません。 – Rodrigo

+1

'knit(" sample.Rnw ")'を実行してコンパイルしても問題はありません。 '' sample.tex ''文書を生成します。しかし、ESSの「ショートカット」「M-n r」を使って文書を編むと、私はあなたと同じエラーを受けます。 **これは、ESSが 'knit()'を呼び出す方法に問題があるようです。** Rコンソールを実行した後、 'Mn r'を確認して、' .ess_weave() 'を実行しています。そこに一見がある。あるいは、R、Emacs、ESSのバージョン情報を報告する[ESS-help](https://stat.ethz.ch/mailman/listinfo/ess-help)や、 –

+1

わからないESSコマンド。環境問題のように聞こえる。私はEmacs/ESSを長い間使用しておらず、 'local()'でSweave/knitrを呼び出すことを覚えています。理由はそうかもしれません。 –

答えて

1

ほとんどの環境問題ここではサンプル.Rnwファイルです。これで解決するはずです:

(setq ess-swv-processing-command "%s(%s)") 
関連する問題