1
R中的glm如何处理'NA'值
我有一个数据表T1,其中包含近一千个变量(V1)和大约2亿个数据点。数据稀疏,大多数条目均为NA。每个数据点都有唯一的ID和日期对,以区别于另一个。 我有另一个表T2,其中包含一组单独的变量(V2)。该表还具有ID和日期对,用于唯一标识T2中的条目。 我们怀疑T1中的数据可用于预测T2中的变量值。 为了证明这一点,我想在R中应用'glm'模型,并检查我们是否真的可以在T2中找到一些依赖于T1中变量的变量。 对于T2中的每个变量,我开始提取T1中具有相同ID和日期对的所有数据,这导致某些测试变量的数据点小得多,约50K。 我现在使用glm面临的问题如下。 在某些情况下,它向我显示错误“找不到适合”和警告“ glm.fit:算法未收敛”。我不确定为什么会显示它? 如何在glm中处理NA?是否先删除所有涉及“ NA”的记录,然后进行拟合? 首先删除所有NA,然后调用“ glm”是一个好策略吗?我担心这可能会大大减少数据点,因为它们中的大多数都是NA。 使用哪种方法来计算系数。我找不到任何讨论输出计算方式的网站,论文或书籍。 我测试了带有和不带有“ NA”的glm,并找到了不同的答案,这表明在拟合数据时要考虑NA: 范例1: > tmpData x1 x2 x3 Y 1 1 1 1 3 2 1 0 4 5 3 1 2 3 6 4 0 3 1 4 Call: glm(formula = as.formula(paste(dep, " ~ ", paste(xn, …