【问题标题】:R: why does stargazer return incorrect values for min and max with this dataframe?R:为什么观星者使用这个数据帧返回不正确的最小值和最大值?
【发布时间】:2020-05-02 02:28:51
【问题描述】:

我今天正在使用 stargazer 制作一些基本的汇总表,并注意到一些奇怪的行为:

library(stargazer)

my_df <- data.frame(speed = c(3.00,3.20,3.00,3.20,3.10,2.90),
                    age = c(22,24,24,28,19,25))

stargazer(my_df, type="text",
          summary.stat = c("min", "mean", "max"),
          digits = 2)

输出是:

=======================
Statistic Min Mean  Max
-----------------------
speed      3  3.07   3 
age       19  23.67 28 
-----------------------

显然min 应该是 2.90 和 max 应该是 3.20,因为我已经指定了 digits=2...我失去了我的弹珠吗?如果重要的话,我正在使用 stargazer 5.2.2 和 R 3.6.3。

【问题讨论】:

  • 我也遇到了同样的问题!好奇你有什么版本的 R,你是 Macbook 用户吗?
  • 我原来的帖子是 R 3.6.2,但我仍然可以在 4.0.2 上重现错误。我在 Windows 10 上。我最终确实通过电子邮件向软件包的维护者发送了电子邮件,但没有收到他的回复。 Stargazer 自 2018 年以来没有更新,所以我认为该软件包不再积极维护。我一直在使用 dplyr 中的 summarise() 和相关函数来创建自己的汇总表,并使用 kableExtra 中的 save_kable() 保存它们

标签: r stargazer


【解决方案1】:

这看起来有点像未记录的行为(又名错误)。

我可能是错的,但似乎该函数正在检查每个变量的第一个值以确定如何呈现最小/最大结果,如果它发现任何看起来像整数的东西,则忽略 digits 参数。例如,将第一个值从 3.00 更改为 3.10,您将获得预期的输出。

my_df <- data.frame(speed = c(3.10,3.20,3.00,3.20,3.10,2.90),
                    age = c(22,24,24,28,19,25))

stargazer(my_df, type="text",
          summary.stat = c("min", "mean", "max"),
          digits = 2)

=========================
Statistic Min  Mean  Max 
-------------------------
speed     2.90 3.08  3.20
age        19  23.67  28 
-------------------------

我在 mtcars 数据集上进行了尝试,得到了相同的行为。

stargazer(mtcars[,c("mpg","drat","wt","qsec")], type='text', digits=2)

=========================================================
Statistic N  Mean  St. Dev.  Min  Pctl(25) Pctl(75)  Max 
---------------------------------------------------------
mpg       32 20.09   6.03    10     15.4     22.8    34  
drat      32 3.60    0.53   2.76    3.08     3.92   4.93 
wt        32 3.22    0.98   1.51    2.58     3.61   5.42 
qsec      32 17.85   1.79   14.50  16.89    18.90   22.90
---------------------------------------------------------

head(mtcars[,c("hp","mpg","drat","wt","qsec")])
#                    hp  mpg drat    wt  qsec
# Mazda RX4         110 21.0 3.90 2.620 16.46
# Mazda RX4 Wag     110 21.0 3.90 2.875 17.02
# Datsun 710         93 22.8 3.85 2.320 18.61
# Hornet 4 Drive    110 21.4 3.08 3.215 19.44
# Hornet Sportabout 175 18.7 3.15 3.440 17.02
# Valiant           105 18.1 2.76 3.460 20.22

所以,我不认为你正在失去你的弹珠。但是你应该把这个报告给包作者,看看他(Marek Hlavac)怎么说。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-12-07
    • 1970-01-01
    • 2020-09-06
    • 2013-06-05
    • 1970-01-01
    • 2021-07-01
    • 1970-01-01
    相关资源
    最近更新 更多