gpt4 book ai didi

Round 函数不再适用于鼠标输出

转载 作者:行者123 更新时间:2023-12-04 10:00:38 25 4
gpt4 key购买 nike

由于将 R 更新到 4.0.0 并重新安装 mice看来round()函数不再适用于鼠标输出,但会产生错误消息。

例如(使用 iris 数据集):

library(missForest) # for the prodNA function
library(mice) # for the imputations

#Creating dataset with missing values (NAs)
iris.mis <- prodNA(iris, noNA = 0.1)
head(iris.mis)

#Imputation
imputed_data <- mice(data = iris.mis, m = 5, method = "pmm",
maxit = 50, seed = 500)
model <- with(data = imputed_data, lm(Sepal.Length ~ Sepal.Width))
round(summary(pool(model), conf.int = TRUE, exponentiate = TRUE), 2)

这会产生错误消息:

Error in Math.data.frame(list(term = 1:2, estimate = c(760.13466726231, : non-numeric variable(s) in data frame: term



使用 summary(pool(model), conf.int = T, exponentiate = T)工作得很好。

在更新 R 和鼠标之前,我从来没有遇到过 R 中的 round 函数的问题。

最佳答案

我不知道为什么会发生这种变化,但 NEWS file for mice在 3.8 版中说

There is now a more flexible pool() function that integrates better with the broom and broom.mixed packages.



将行名称更改为 term 是有道理的。列代替,因为这与 tidyverse 机器更兼容(如 broombroom.mixed )。

您可以要求 R 舍入除第一列之外的所有内容:
ss <- summary(pool(model), conf.int = TRUE, exponentiate = TRUE)
ss[-1] <- round(ss[-1],2)
ss
## term estimate std.error statistic df p.value 2.5 % 97.5 %
## 1 (Intercept) 670.98 0.48 13.69 143.68 0.00 262.19 1717.15
## 2 Sepal.Width 0.80 0.15 -1.44 143.36 0.15 0.59 1.09

如果你喜欢 tidyverse 你可以
mutate_if(ss,is.numeric, round, 2)

关于Round 函数不再适用于鼠标输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61840259/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com