【问题标题】:stargazer error "length of NULL cannot be changed" when running rchunk in rmarkdown only仅在 rmarkdown 中运行 rchunk 时,stargazer 错误“无法更改 NULL 的长度”
【发布时间】:2020-10-04 02:32:49
【问题描述】:

我在我大学的 rstudio pro 服务器上使用 Rmarkdown 教授计量经济学,运行 R 3.6.3。每当我使用 stargazer 运行 rchunk 来显示回归结果时,我都会在表格前得到一个错误的序言。这是代码的复制和粘贴以及运行代码块后的确切结果:

lm.1 <- lm(mpg ~ cyl,data=mtcars)
stargazer(lm.1,type="text")

NULL的长度不能改变NULL的长度不能改变NULL的长度不能改变NULL的长度不能改变NULL的长度不能改变

===============================================
                        Dependent variable:    
                    ---------------------------
                                mpg            
-----------------------------------------------
cyl                          -2.876***         
                              (0.322)          

Constant                     37.880***         
                              (2.074)          

-----------------------------------------------
Observations                    32             
R2                             0.726           
Adjusted R2                    0.717           
Residual Std. Error       3.206 (df = 30)      
F Statistic           79.560*** (df = 1; 30)   
===============================================
Note:               *p<0.1; **p<0.05; ***p<0.01

无论我使用 type= text、html 还是 latex,都会发生此错误。

虽然错误没有出现在 knitted 报告中,但学生们所做的大部分工作只是简单地运行 r 块。并且,因此每个学生在他们看到的每个回归结果表之前都会以鲜红色的文本获得错误的序言。对说服他们没有帮助 R 及其有用的软件包是用于编写统计报告的现代、稳定和专业的工具。

有谁知道 stargazer 出现此错误的原因以及如何消除它?

编辑:回复@J_F(感谢您的评论)

这里是 sessionInfo() 输出:

sessionInfo()

R 版本 3.6.3 (2020-02-29) 平台:x86_64-pc-linux-gnu(64位) 运行于:Ubuntu 18.04.4 LTS

矩阵产品:默认 BLAS:/usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1 LAPACK:/usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1

语言环境: [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C

附加的基础包: [1] stats graphics grDevices utils datasets methods base

其他附加包: [1] 观星者_5.2.2

通过命名空间加载(未附加): [1] 编译器_3.6.3 工具_3.6.3 knitr_1.27 xfun_0.12

这是我的 .rmd 文件的全部内容:

---
title: "stargazer test"
output: html_document
---
library(stargazer)
knitr::opts_chunk$set(echo = TRUE)
lm1 <- lm(mpg ~ cyl, data = mtcars)
stargazer(lm1,type="text")

【问题讨论】:

  • 你想要的输出是什么? sessionInfo() 提供的详细信息是什么?我无法重现您描述的行为。
  • @J_F 感谢您的评论。只是为了仔细检查,您是否只是运行 rchunk 来尝试重新创建错误?那是错误发生的唯一时间。我编织时它不显示。

标签: error-handling r-markdown stargazer


【解决方案1】:

我也遇到过这个问题。无法确定消息的来源,但如果您想隐藏警告消息,您可以在第二个块中为整个文档关闭它们:

knitr::opts_chunk$set(echo = TRUE, warning = FALSE)

或者通过在 suppressWarnings() 中包装 stargazer 调用

【讨论】:

    【解决方案2】:

    我得到同样的错误,我真的不知道为什么。我发现如果我在代码块中使用以下内容,那么当我编织时,stargazer 表就会正常。

    {r 结果='asis'}

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-12-17
      • 2022-07-08
      • 2022-01-07
      • 2012-06-11
      • 1970-01-01
      • 2015-07-11
      • 2018-10-07
      • 1970-01-01
      相关资源
      最近更新 更多