Questions tagged «missing-data»

当数据存在时,信息(缺口)不足,即不完整。因此,在执行分析或测试时考虑此功能很重要。

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, …

3
R中丢失数据的完整信息最大可能性
上下文:具有某些缺失数据的层次回归。 问题:如何使用完整信息最大似然(FIML)估计来解决R中的丢失数据?有没有推荐的软件包,典型的步骤是什么?在线资源和示例也将非常有帮助。 PS:我是一名社会科学家,最近刚开始使用R。可以选择多重插补,但是我非常喜欢Mplus之类的程序如何使用FIML优雅地处理丢失的数据。不幸的是,Mplus目前似乎没有在层次回归的情况下比较模型(请告诉我您是否知道这样做的方法!)。我想知道R中是否有类似的东西?非常感谢!

2
结果变量的多重插补
我有一个关于农业试验的数据集。我的反应变量是一个反应比率:log(治疗/对照)。我对调解差异的原因很感兴趣,因此我正在运行RE元回归(未加权,因为很明显效果大小与估计方差无关)。 每个研究报告谷物产量,生物量产量或两者。我无法从仅报告生物量产量的研究中得出谷物的产量,因为并非所有研究的植物都对谷物有用(例如,包括甘蔗)。但是每一种产生谷物的植物也都有生物量。 对于缺少的协变量,我一直在使用迭代回归插补(遵循安德鲁·盖尔曼的教科书章节)。它似乎给出了合理的结果,并且整个过程通常是直观的。基本上,我预测缺失值,并使用这些预测值预测缺失值,并遍历每个变量,直到每个变量近似收敛(分布)。 有什么原因使我无法使用相同的过程来估算缺失的结果数据?给定谷类响应比,作物类型和我拥有的其他协变量,我可能可以为生物量响应比形成一个相对有用的估算模型。然后,我将对系数和VCV求平均值,并按照标准做法添加MI校正。 但是,当推算结果本身时,这些系数将如何衡量?协变量的系数解释是否与标准MI有所不同?考虑一下,我无法说服自己这行不通,但我不确定。欢迎阅读材料的想法和建议。

2
如何在R中同时使用数字/分类值进行有序Logistic回归分析?
基本数据:我约有1,000个人标有评估:“ 1,” [好],“ 2”,[中]或“ 3” [差] –这些是我将来要为人们预测的价值。除此之外,我还有一些人口统计信息:性别(分类:男/女),年龄(数字:17-80)和种族(分类:黑人/高加索人/拉丁裔)。 我主要有四个问题: 我最初试图将上述数据集作为多元回归分析来运行。但是我最近了解到,由于我的依存关系是有序因素,而不是连续变量,因此我应该对此类情况使用序数逻辑回归。我最初使用的是这样的东西mod <- lm(assessment ~ age + gender + race, data = dataset),有人能指出我正确的方向吗? 从那里开始,假设我对系数感到满意,就知道如何仅将数值插入x1,x2等。但是,例如在有多种响应的情况下,我将如何处理种族:黑人/高加索人/拉丁美洲人?因此,如果它告诉我白种人系数为0.289,而我要预测的某个人是白种人,那么由于值不是数字,我该如何重新插入? 我还缺少一些随机值-有些是种族的,有些是性别的,等等。我是否还需要做其他一些事情以确保它不会歪斜任何东西?(我注意到,当我的数据集被加载到R-Studio中时,当丢失的数据被加载为时NA,R表示类似(162 observations deleted due to missingness)-但如果它们被加载为空白,则它什么都不做。) 假设所有这些都可以解决,并且我有我要预测的具有性别,年龄和种族的新数据-R中有没有更简单的方法可以通过我的新系数公式通过所有这些方法来运行所有这些数据,而不是手动进行?(如果这个问题在这里不合适,我可以将其带回R论坛。)

2
当我们只有关于当前素食者的调查数据时,如何计算对素食主义者的平均坚持时间?
调查了随机样本。他们被问是否吃素食。如果他们回答“是”,他们还被要求说明他们吃素饮食已经连续多长时间了。我想使用此数据来计算对素食主义的平均坚持时间。换句话说,当某人成为素食主义者时,我想知道他们平均会长期保持素食。假设: 所有受访者都给出了正确准确的答复 世界是稳定的:素食主义的流行没有改变,平均遵守时间也没有改变。 到目前为止我的推理 我发现分析世界的玩具模型很有帮助,每年年初两个人成为素食主义者。每次,他们其中一名保持素食一年,另一年保持三年。显然,这个世界的平均遵守时间为(1 + 3)/ 2 = 2年。这是说明该示例的图形。每个矩形代表一个素食主义时期: 假设我们在第4年中期(红线)进行了调查。我们得到以下数据: 如果从第3年开始的任何一年进行调查,我们将获得相同的数据。 (2 * 0.5 + 1.5 + 2.5)/ 4 = 1.25 我们低估了我们的假设,因为我们假设所有人在调查后都不再是素食主义者,这显然是错误的。为了获得接近于这些参与者保持素食的真实平均时间的估计,我们可以假设他们平均报告了素食主义时期的一半时间,并且将报告的持续时间乘以2。从人群中(就像我正在分析的人群),我认为这是一个现实的假设。至少它会给出正确的期望值。但是,如果只做一倍,我们的平均值为2.5,这被高估了。这是因为人保持素食的时间越长,他在当前素食者样本中的可能性就越大。 然后,我认为当前素食者样本中某人的概率与他们的素食主义时长成正比。为了解决这种偏见,我尝试将当前素食者的人数除以他们预计的坚持时间: 但是,这也会给出错误的平均值: (2 * 1 +⅓* 3 +⅕* 5)/(2 +⅓+⅕)= 4 / 2.533333 = 1.579年 如果将素食者的人数除以他们的正确坚持时间,就会得出正确的估计: (1 +⅓*(1 + 3 + 5))/(1 +⅓* 3)= 2年 但是,如果我使用预测的坚持时间是行不通的,那是我实际拥有的全部。我不知道还能尝试什么。我读了一些有关生存分析的信息,但是我不确定在这种情况下如何应用它。理想情况下,我还希望能够计算90%的置信区间。任何提示将非常感谢。 编辑:可能上面的问题没有答案。但是还有另一项研究随机询问了人们是否是素食主义者,以及过去有多少次素食主义者。我也知道学习和其他方面每个人的年龄。也许可以将此信息与当前素食者的调查结合使用,以某种方式获得平均值。实际上,我所说的研究只是其中的一个难题,但它是非常重要的一个难题,我想从中得到更多。

2
如何按时间序列填写缺失的数据?
我有大量的污染数据,在过去的2年中,每10分钟记录一次,但是数据中存在很多空白(其中一些空白一次出现几个星期)。 数据似乎确实是季节性的,与夜间相比,白天的变化很大,在夜间,值没有太大的变化,并且数据点较低。 我考虑过将黄土模型分别适合于白天和晚上的子集(因为它们之间存在明显的差异),然后预测缺失数据的值并将这些点填入。 我想知道这是否是解决此问题的合适方法,是否还需要在预测点中添加局部变化。

3
将R预测包与缺失值和/或不规则时间序列一起使用
R forecast包以及zoo用于不规则时间序列和内插缺失值的包给我留下了深刻的印象。 我的应用程序是在呼叫中心流量预测方面,因此(几乎)总是缺少周末的数据,可以通过很好地处理zoo。此外,一些离散的点可能会丢失,我只是用的r NA为。 事实是:所有的预测包的漂亮的魔法,比如eta(),auto.arima()等等,似乎期望普通ts的物体,不包含任何丢失的数据,即等间隔的时间序列。我认为在现实世界中仅存在等时时间序列的应用确实存在,但是-我认为-非常有限。 几个离散的问题NA的值可容易地通过使用任何的提供内插函数来解决zoo,以及通过forecast::interp。之后,我运行了预测。 我的问题: 有人建议更好的解决方案吗? (我的主要问题)至少在我的应用程序域中,呼叫中心流量预测(据我所能想象的大多数其他问题域),时间序列不是等距的。至少我们有重复的“工作日”计划或类似的计划。什么是最好的处理方式,同时仍然使用预测包的所有酷魔术? 我是否应该“压缩”时间序列以填充周末,进行预测,然后再次“充气”数据以在周末重新插入NA值?(我认为这是一种耻辱吗?) 是否有计划使预测程序包与不定期的时间序列程序包(如Zoo或其兼容程序)完全兼容?如果是,何时和否,为什么不呢? 我对预测(以及一般的统计数据)还很陌生,所以我可能会忽略一些重要的事情。

4
梯度提升机的精度随着迭代次数的增加而降低
我正在通过caretR中的程序包尝试使用梯度增强机算法。 使用一个小的大学录取数据集,我运行了以下代码: library(caret) ### Load admissions dataset. ### mydata <- read.csv("http://www.ats.ucla.edu/stat/data/binary.csv") ### Create yes/no levels for admission. ### mydata$admit_factor[mydata$admit==0] <- "no" mydata$admit_factor[mydata$admit==1] <- "yes" ### Gradient boosting machine algorithm. ### set.seed(123) fitControl <- trainControl(method = 'cv', number = 5, summaryFunction=defaultSummary) grid <- expand.grid(n.trees = seq(5000,1000000,5000), interaction.depth = 2, shrinkage = …
15 machine-learning  caret  boosting  gbm  hypothesis-testing  t-test  panel-data  psychometrics  intraclass-correlation  generalized-linear-model  categorical-data  binomial  model  intercept  causality  cross-correlation  distributions  ranks  p-value  z-test  sign-test  time-series  references  terminology  cross-correlation  definition  probability  distributions  beta-distribution  inverse-gamma  missing-data  paired-comparisons  paired-data  clustered-standard-errors  cluster-sample  time-series  arima  logistic  binary-data  odds-ratio  medicine  hypothesis-testing  wilcoxon-mann-whitney  unsupervised-learning  hierarchical-clustering  neural-networks  train  clustering  k-means  regression  ordinal-data  change-scores  machine-learning  experiment-design  roc  precision-recall  auc  stata  multilevel-analysis  regression  fitting  nonlinear  jmp  r  data-visualization  gam  gamm4  r  lme4-nlme  many-categories  regression  causality  instrumental-variables  endogeneity  controlling-for-a-variable 

1
在原假设下,可交换样本背后的直觉是什么?
排列检验(也称为随机检验,重新随机检验或精确检验)非常有用,并且在t-test未满足例如要求的正态分布的假设以及通过按等级对值进行转换时派上用场非参数测试之类的测试Mann-Whitney-U-test会导致丢失更多信息。但是,在使用这种检验时,一个假设且唯一一个假设应该是原假设下样本的可交换性假设。还值得注意的是,当有两个以上的示例(如在coinR包中实现的示例)时,也可以应用这种方法。 您能用简单的英语用一些比喻语言或概念直觉来说明这一假设吗?这对于在像我这样的非统计学家中阐明这个被忽视的问题非常有用。 注意: 提及在相同假设下应用置换测试不成立或无效的情况将非常有帮助。 更新: 假设我随机从我所在地区的当地诊所收集了50个受试者。他们被随机分配为接受药物或安慰剂的比例为1:1。分别Par1在V1(基准),V2(3个月后)和V3(1年后)时测量了参数1 。根据特征A,所有50个主题都可以分为2组;正值= 20,负值=30。它们也可以基于特征B细分为另外2组;B阳性= 15,B阴性=35。 现在,我具有Par1所有访问中所有受试者的值。在可交换性的假设下,如果可以,我是否可以在Par1使用置换测试的水平之间进行比较: -将接受药物治疗的受试者与接受V2安慰剂治疗的受试者进行比较? -将具有特征A的对象与具有V2的特征B的对象进行比较? -比较在V2具有特征A的对象与在V3具有特征A的对象? -在哪种情况下,这种比较是无效的,并且违反了可交换性的假设?
15 hypothesis-testing  permutation-test  exchangeability  r  statistical-significance  loess  data-visualization  normal-distribution  pdf  ggplot2  kernel-smoothing  probability  self-study  expected-value  normal-distribution  prior  correlation  time-series  regression  heteroscedasticity  estimation  estimators  fisher-information  data-visualization  repeated-measures  binary-data  panel-data  mathematical-statistics  coefficient-of-variation  normal-distribution  order-statistics  regression  machine-learning  one-class  probability  estimators  forecasting  prediction  validation  finance  measurement-error  variance  mean  spatial  monte-carlo  data-visualization  boxplot  sampling  uniform  chi-squared  goodness-of-fit  probability  mixture  theory  gaussian-mixture  regression  statistical-significance  p-value  bootstrap  regression  multicollinearity  correlation  r  poisson-distribution  survival  regression  categorical-data  ordinal-data  ordered-logit  regression  interaction  time-series  machine-learning  forecasting  cross-validation  binomial  multiple-comparisons  simulation  false-discovery-rate  r  clustering  frequency  wilcoxon-mann-whitney  wilcoxon-signed-rank  r  svm  t-test  missing-data  excel  r  numerical-integration  r  random-variable  lme4-nlme  mixed-model  weighted-regression  power-law  errors-in-variables  machine-learning  classification  entropy  information-theory  mutual-information 

3
我可以根据样本大小以及最小值和最大值重建正态分布吗?我可以使用中点来代表均值
从统计上讲,我知道这可能有些困难,但这是我的问题。 我有很多范围数据,即变量的最小,最大和样本大小。对于其中一些数据,我也有一个平均值,但并不多。我想将这些范围相互比较,以量化每个范围的变异性,并比较均值。我有充分的理由假设分布在均值周围是对称的,并且数据将具有高斯分布。因此,我想我可以证明在没有均值时使用分布的中点作为均值的代理。 我想做的是为每个范围重建一个分布,然后使用该分布为该分布提供标准偏差或标准误差。我仅有的信息是从样本中观察到的最大值和最小值,以及将中点作为平均值的代表。 这样,我希望能够基于我拥有的范围数据和我的假设(对称分布和正态分布)来计算每组的加权均值,并计算出每组的变异系数。 我打算使用R来做到这一点,因此任何代码帮助也将不胜感激。

1
在指数平滑模型中处理丢失的数据
在指数平滑模型家族的背景下,似乎没有一种标准的方法来处理丢失的数据。特别是,在预测包中称为ets的R实现似乎只占用了最长的子序列,而没有丢失数据,Hyndman等人的《带指数平滑的预测》一书也是如此。似乎根本没有谈论丢失数据。 如果我的用户明确要求我(并且丢失的数据不会出现得太近或出现的时间间隔恰好相隔一个季节),我想做更多的事情。特别要注意的是以下几点。在模拟过程中,每当我会遇到一个丢失值,我将替代当前点预报〜ý吨为ÿ 吨,使得ε 吨 = 0。例如,这将使数据点在参数优化过程中不被考虑。ÿŤÿŤy_tÿ〜Ťÿ〜Ť\tilde y_tÿŤÿŤy_tεŤ= 0εŤ=0\varepsilon_t = 0 一旦我对参数有合理的拟合度,就可以估计误差的标准偏差(假设是平均值为),并验证使用从该分布生成的ϵ t值不会将可能性大幅度降低。我也将这些值用于预测(使用模拟)。000ϵŤϵŤ\epsilon_t 此方法是否存在已知的陷阱?

2
处理具有可变数量特征的数据集
对具有可变数量特征的数据进行分类的方法有哪些? 例如,考虑一个问题,其中每个数据点都是x和y点的向量,而每个实例的点数不相同。我们可以将每对x和y点视为一个特征吗?还是应该以某种方式总结这些点,以便每个数据点都具有固定数量的功能?


5
缺失值的多重插补
我想在某些约束下使用插补替换数据集中的缺失值。 例如,我希望估算的变量x1大于或等于我的另外两个变量,例如x2和x3。我也想x3通过或者被估算0或者>= 14,我想x2无论以任何打杀0或>= 16。 我尝试在SPSS中为多个插值定义这些约束,但是在SPSS中,我只能定义最大值和最小值。有什么方法可以在SPSS中定义进一步的约束,或者您知道任何R包可以让我为缺失值的插值定义此类约束吗? 我的数据如下: x1 =c(21, 50, 31, 15, 36, 82, 14, 14, 19, 18, 16, 36, 583, NA,NA,NA, 50, 52, 26, 24) x2 = c(0, NA, 18,0, 19, 0, NA, 0, 0, 0, 0, 0, 0,NA,NA, NA, 22, NA, 0, 0) x3 = c(0, 0, 0, 0, …

1
使用样条或分数多项式时,如何处理丢失的数据?
我正在阅读多变量模型构建: Patrick Royston和Willie Sauerbrei提出的基于分数多项式的实用回归分析模型,用于对连续变量进行建模。到目前为止,我印象深刻,这是我以前从未考虑过的有趣方法。 但是作者没有处理丢失的数据。的确,在p。17他们说丢失数据“引入了许多其他问题。这里不考虑。” 多重插补是否可以使用分数多项式> 在某些方面(但不是全部),FP是样条曲线的替代方法。样条回归处理缺失数据是否更容易?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.