我正在尝试使用R中的mouses软件包估算连续变量的平均值。我能够生成m个估算的平均值,但是当我尝试使用pool()函数汇总这些平均值时,出现错误消息:“错误:没有数字类对象的扫视方法”。
我已经能够在汇总线性回归模型的结果时使用库函数,但不能用于平均值/中值或分类数据的计数。
我已经尝试了虹膜数据集以及我自己的数据。我将使用虹膜数据来说明问题
library(mice)
library(miceadds)
library(purr)
#Creating dataset with missing values (NAs)
iris.mis <- prodNA(iris, noNA = 0.1)
head(iris.mis)
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1 5.1 3.5 1.4 0.2 setosa
2 NA 3.0 NA 0.2 <NA>
3 4.7 3.2 1.3 0.2 setosa
4 4.6 3.1 1.5 0.2 setosa
5 NA 3.6 1.4 0.2 setosa
6 5.4 3.9 1.7 0.4 setosa
#Imputation
imputed_data <- mice(data = iris.mis, m = 5, method = "pmm", maxit = 50, seed = 500)
mean_sepal_width <- with(data = imputed_data, expr = mean(Sepal.Width))
print(mean_sepal_width)
summary(pool(mean_sepal_width))
[summary(pool())命令给出错误消息:“错误:类数字对象的无视方法”。
我也尝试过不使用摘要功能,但也不能使用,即>]
pool(mean_sepal_width)
此外,我尝试将mean_sepal_width对象(属于mira和matrix类)转换为向量,然后找到均值和中值(与鲁宾的插补规则不太相同,但考虑到插补值的相似性在我的数据集以及此处显示的虹膜示例中,对于该项目而言,这是可以接受的)。不幸的是,这也不起作用。例如:
mean(as.vector(mean_sepal_width))
上面还给出了一条错误消息:“警告消息:在mean.default(as.vector(mean_sepal_width))中:参数不是数字或逻辑:返回NA“
对于不正确的测试,在stackoverflow上也有类似的问题:mice's pool.compare gives "Error: No glance method for objects of class call" for lmerTest models但是建议的答案对我也不起作用。
也许无法在小鼠中做到这一点?
我将非常感谢您提供有关如何解决此问题的建议。提前非常感谢。
[我正在尝试使用R中的mouses软件包估算连续变量的平均值。我能够生成m个估算的平均值,但是当我尝试使用pool()函数汇总这些平均值时,会得到一个...
对于第二种方法,取向量的均值,可以尝试mean(unlist(mean_sepal_width$analyses))
。我不确定使用pool
的第一种方法是否可以在不拟合模型的情况下使用。