问题标签 [r-mice]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 在小鼠中添加插补功能
我最近使用 R 的潜在特征建模包为我的数据安装了分级响应模型。我试图在mice 包中添加我拟合的分级响应模型来估算丢失的数据,但我无法访问mice 算法进行编辑。我的问题是,如果我在小鼠中使用 polr() 函数,或者如果我使用我使用潜在特征建模包拟合的分级响应模型来估算数据,这有什么不同吗,因为这两个函数都是从 R 中的 polr() 函数派生的大包
r - R 鼠标包:只有 1 个 NA 时 2l.norm 出错
在调用鼠标时指定“2l.norm”方法后,我偶然发现了仅包含 1 个 NA 的变量的错误消息。考虑到这些变量的缺失数据量非常少,我意识到这是一个非常小的问题。但是,将这些数据结构也考虑在内会很优雅。
我使用所有人都可以访问的数据库 ChickWeight 数据集重新创建了这种情况。我非常意识到这个问题也可能是我在执行程序时出错的结果,所以如果是这种情况,请告诉我。
最后一条命令导致:
[<-.data.frame
( *tmp*
, , i, value = c(37.3233463394145, 159.862324738397 中的错误:替换有 2 行,数据有1
添加一个额外的 NA 解决了这个问题
有谁知道什么可能导致错误?
r - 对来自小鼠 (R) 的估算数据子集运行 glm.mids
当我尝试在插补对象glm.mids
的子集上运行时出现错误:mids
给出神秘的错误信息
即使语法glm
在原始数据集上与常规一起使用:
该文档?glm.mids
没有具体说明subset
,但说您可以将其他参数传递到glm
. 如果我不能使用subset
with ,有没有直接子集列表对象glm.mids
的好方法?mids
r - 自动比较来自小鼠 glm.mids 的嵌套模型
我有一个来自 Rmice
包的多重估算模型,其中有很多因子变量。例如:
我想通过针对每次删除一个变量的每个可能的嵌套模型测试完整模型来测试模型中每个整个因子变量的重要性(而不是每个级别的指示变量)。手动,我可以这样做:
如何为模型中的所有因子变量自动执行此操作?对于之前的问题drop1
,向我建议了非常有用的功能——现在我想做一些与此完全相同的事情,除了这种情况。mice
可能有用的说明:一个令人讨厌的特性pool.compare
是,它似乎希望将较大模型中的“额外”变量放在与较小模型共享的变量之后。
r - 对 R 的 MICE 中的每个估算数据集执行操作
如何对mids
R 包中的类对象中的每个插补数据集执行操作(如子集或添加计算列) mice
?我希望结果仍然是一个mids
对象。
编辑:示例
估算的数据集存储为列表列表
其中只有对给定变量进行插补的观察的行。
原始(不完整)数据集存储在这里:
例如,我将如何创建一个chl/2
在每个估算数据集中计算的新变量,从而产生一个新mids
对象?
r - 小鼠池()函数和 coxph():在mice.df(...)中:假设大样本?
我在多重插补数据集中使用coxph()
了包中的函数,并在尝试合并结果时遇到了警告。survival
警告消息指出:"In mice.df(m, lambda, dfcom, method) : Large sample assumed.
下面是一个可重现的示例(使用公开可用的数据,无需过多担心同时使用这些数据的适当性mice()
)coxph()
:
此警告似乎是由于pool()
函数试图要求 dfcom 从
wheredf.residual()
不适用于本文所指的对象,属于类coxph
我的问题是
- 我是否出于目的使用正确的语法
- 如果是这样,有没有办法提供
pool()
适当的信息? - 这个假设如何影响结果?
r - 使用种子 = NA 时,如何找出 MICE R 包为多重插补选择的种子?
我正在使用以下代码对名为“mydata”的数据框进行多重插补:
图书馆(小鼠)
imp<-mice(mydata,pred=pred,method="pmm", m=10)
因为这个函数的默认参数是“seed=NA”,所以种子号是随机选择的。我想保持这样,因为我不知道我应该选择哪个数字作为种子。但是对于复制,我想知道这个函数为我选择了哪个种子。是否有可能检查种子值的中间对象“imp”?还是我应该只使用随机数生成器并将种子设置为生成的值?
r - R MICE 插补失败
我真的很困惑为什么我的估算在 R 的mice
包中失败了。我正在尝试使用以下数据框进行非常简单的操作:
然后我以下列方式使用鼠标来执行简单的平均插补:
但是,我完成的数据如下所示:
为什么我仍然得到这个尾随NA
?这是我可以构建的最简单的失败示例,但我的真实数据集要大得多,我只是想了解哪里出了问题。任何帮助将不胜感激!
r - 小鼠中的 R 模拟和回归()
我正在使用 R 中的 mouse 包进行多重插补并试图理解其背后的算法。
在其文档http://www.jstatsoft.org/v45/i03/paper中,据说使用了 MICE 算法。据我了解,它使用 Gibbs Sampler 执行 MCMC,其中模拟参数 BETA,该参数定义了给定 Y-(没有 Y 的所有其他变量)的 Y(具有缺失值的变量)的条件分布。使用模拟的 BETA,定义了相应的条件分布。然后它从条件分布中提取值并用它替换缺失的值。它对所有具有缺失值的变量重复该过程。
但是,我不明白的是,回归发生在哪里?在mice() 函数中,我们确实需要指定'method' 参数。例如,'logreg' 用于二项分布变量,'polyreg' 用于超过 2 级的因子变量。如果插补由 MCMC 完成,为什么我们需要指定回归?
一些文档表明 MICE 算法在所有缺少模式的变量上迭代地运行回归。每次缺失一个变量为被访变量,其余均为解释变量。然后使用拟合值替换缺失值并转到下一个缺失值变量。下一个回归将包括上次回归的估算数据。这与 Gibbs 采样器的方案相同,但似乎没有模拟。详细信息在这里http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3074241/
任何人都可以帮助我了解 R 中老鼠的真实情况吗?
r - “mice”包的 predict() 方法
我想使用包中的mice
函数创建插补策略mice
。问题是我似乎无法predict
在这个包中找到任何新数据的方法(或者它的表亲)。
我想做这样的事情:
我想找到一些可以模拟上面代码的方法。现在,完全可以分别mice
对训练数据集和测试数据集进行单独的操作,但从逻辑的角度来看,这似乎是不正确的——你拥有的所有信息都在训练数据集中。来自测试数据集的观察不应该为彼此提供信息。在处理数据时尤其如此,因为观察可以按出现时间排序。
一种可能的方法是从测试数据集中添加行以迭代地训练数据集,每次都运行插补。然而,这似乎非常不雅。
所以这是一个问题:
是否有mice
类似于通用方法的包predict
方法?如果没有,可能的解决方法是什么?
谢谢!