2014-02-19 75 views
5

標準化輸出測試統計信息我試圖讓Latex和knitr執行標準化\ Sexpr {}統計輸出。用 Sexpr

例:I計算與

mycor<-cor.test(a,b) 

相關假設的結果將是:

Pearson's product-moment correlation 

data: a and b 
t = 2.9413, df = 54, p-value = 0.004805 
alternative hypothesis: true correlation is not equal to 0 
95 percent confidence interval: 
0.1204668 0.5780293 
sample estimates: 
cor 
0.3715985 

我如何 「教」 的LaTeX來生成輸出

R(54 )=。37,p < .01

無需編寫

$r(\Sexpr{mycor$parameter)=\Sexpr{mycor$estimate}$, $p < .05$ 

所有的時間?

我想編寫一個命令,爲我報告的每個關聯執行此操作。請注意,我希望能夠自動將p = 0.004805轉換爲p < .01。

BTW:我試着用

\newcommand{\repcor}[1]{$r(\Sexpr{#1$parameter)=\Sexpr{#1$estimate}$} 

但這不起作用做...

預先感謝您! Benjamin

回答

5

爲什麼不寫一個函數來輸出你想要的。例如,在文檔的開頭,有:

<<echo=FALSE, tidy=FALSE>>= 
trans = function(mycor) { 

    out1 = paste0("$r(", mycor$parameter, ") = ", signif(mycor$estimate, 2), "$,") 

    p = mycor$p.value 
    cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1) 
    round_p = cut(p, cutpoints, labels=cutpoints[-1]) 
    p_value = paste0("$p < ", round_p, "$" ) 

    paste(out1, p_value) 
} 
@ 

這讓\Sexpr{trans(mycor)},你想工作。

相關問題