【问题标题】:summary() function gives strange results with Knitr/RStudiosummary() 函数在 Knitr/RStudio 中给出了奇怪的结果
【发布时间】:2013-02-11 11:12:28
【问题描述】:

我目前在 RStudio 下处理简单的 Markdown 脚本时遇到了一些奇怪的问题。 Summary() 函数给出了不正确的结果,我无法弄清楚发生了什么,因为 RStudio 根本没有给出任何错误。

如果我执行以下 RMarkdown 脚本(我已将文件与数据 here 放在一起)

```{r}
load('mydata.rda')
summary(mydata$b)
head(sort(mydata$b))
```
```{r}
sessionInfo()
```

我得到以下结果

load("mydata.rda")
summary(mydata$b)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##       0    6000   10000   12000   16000   35000

head(sort(mydata$b))
## [1] -0.01 -0.01  0.00  0.00  0.00  0.00

sessionInfo()
## R version 2.15.1 (2012-06-22)
## Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)
## 
## locale:
## [1] es_ES.UTF-8/es_ES.UTF-8/es_ES.UTF-8/C/es_ES.UTF-8/es_ES.UTF-8
## 
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base     
## 
## other attached packages:
## [1] knitr_1.0.5
## 
## loaded via a namespace (and not attached):
## [1] digest_0.5.2   evaluate_0.4.3 formatR_0.6    plyr_1.7.1    
## [5] stringr_0.6.1  tools_2.15.1

如您所见,结果是错误的,因为 'b' 变量的实际最小值是负数,summary() 执行似乎忽略了这一点。我已经尝试过使用 Knitr Rnw pdf 脚本进行相同的操作,并且效果完全相同。但是,当我通过 Sweave 运行它时,结果还可以。

在knitr/RStudio下调用返回的summary函数是什么?这是我遗漏的东西的副作用还是错误?

问候, 格斯

【问题讨论】:

    标签: r knitr rstudio


    【解决方案1】:

    尝试将以下内容添加到文档顶部:

    ```{r, echo=FALSE}
    options(digits = 7)
    ```
    

    要查看 R 会话和 markdown 之间的区别 -> HTML knitr 会话,请在 R 控制台中键入以下内容并将其包含在您的 markddown 文档中,然后比较两者的输出:

    options()
    

    options("digits") 在默认的 R 会话中是 7,但在从 Markdown 文件(至少在我的系统上)编织 HTML 文档的环境中,它是 4。但不确定在哪里设置;)

    【讨论】:

    • 成功了!非常感谢您的回答,虽然我还是不完全明白。我将不得不深入研究一下文档。
    • @Fernandez,我添加了一点解释。希望对您有所帮助。
    • 是的,确实如此。非常感谢。
    猜你喜欢
    • 1970-01-01
    • 2017-02-02
    • 1970-01-01
    • 2016-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-19
    相关资源
    最近更新 更多