顺便说一句,您现在遇到的问题是“丢失数据”问题。这可能是一个问题,这就是他们每次去看医生时都会对你进行重复检查的原因之一,无论你是否觉得它相关。没人愿意对付NULL怪物。
处理起来可能会令人沮丧,但是有很多选择......有些比其他更复杂......有些非常非常复杂......关于这个主题的大量书籍......这还不错尽管。
首先,考虑一下你的目标是什么......你真的需要所有从未访问过模型的人吗?如果它们与您真正寻找的信息无关,特别是如果它们具有多个 NULL 值,它们确实会导致问题(可能是因为它们可能还有其他为 NULL 的数据......只是猜测)......然后我实际上只是删除它们并与它们执行复杂的不同回归/分析。我假设你觉得它们很重要,否则你不会在这里问这个问题,包括它们。
正如您通过提出问题已经认识到的那样......但我要重申:
空值或缺少数据永远不应被解释为 0...这是字面意义上的信息缺乏...这是一个空白...如果您要测量某些东西并且它是“0”,那么这就是数据... .这是信息。如果您无法测量任何东西,那么就没有数据或信息。
1st)我从未听说过将它们的值设置为 +/- 无穷大。也许这是一种我不知道的技术,但似乎它搞砸了很多东西。
2nd)我肯定会有一个二进制变量来指示他们是否曾经访问过。这是超级重要的。回归算法可能会通过系数 * (1) 或 (0) 分配某种权重,以平衡从未访问过的人与访问过的人。事实上,您可能会发现它是您最重要的变量之一。
尽管您可以像您提到的那样将所有内容分成桶(看起来会更容易)......但这可能会将回归算法与包含永不显示的桶混淆。您还通过将唯一值汇总到存储桶中来不必要地消除信息。你只是把它全部扔掉......但无论如何,这就是我要做的一些事情:
你觉得你有足够的其他数据,比如说,在其他列中,关于这些你将在回归中使用的没有显示的数据。老实说,如果它们没有显示,那么您可能有更多的列,其中没有显示的相应 Null 值用于匹配... Null 单元格...如果您这样做,那么此时这超出了我的想象,并且我只是将它们移到您研究的单独回归中。
记录的空值和测量值仿佛来自不同的世界。我什至会自己研究 Nulls……如果重要的话……取决于上下文。尽管 NULL 表示特定参数缺少数据,但它可能(很可能)也与您为它们拥有的许多其他值的值有关......
它们是特殊情况。
无论如何,这是更高级且可能更好的方法的开始。根据您使用的统计软件,它可能已经具有执行此类操作的功能……或更强大……或使用不同的方法。
回归插补
通过这样做,你只是让你的回归算法表现得更好。您没有添加任何价值或附加信息——这是需要牢记的。尽管就误差范围而言,您确实会受到惩罚……因为您没有使用真实数据……它是……模拟的……
因此,您将案例存在的列设置为 NULL 作为 Y 的解释值。然后对所有其他案例运行回归并获得一个公式,然后您可以使用该公式来预测它们的 NULL 值“本来应该是”如果“它在那里”。
这只允许您的回归算法正确和准确地运行。如果你这样做,那么之后你肯定需要额外的二元变量列来表示当你执行“最终回归”时它们是否没有出现。
对于一个更高级的人......
多重回归插补
您还可以通过 1st)通过将 NULL 值设置为 Y 并按照上面的说明进行预测,从而获得更好的结果……然后您就拥有了一个完整的数据集。
您获取完整的数据集并对其进行一系列测试....例如对应分析,然后检查您的数据“完整”程度的其他类型...我会将您链接到我所在的网站在一秒钟内引用..自从我做了其中一个以来已经有一段时间了。
我相信您实际上以不同的方式使用新的模拟值制作了多个数据集(即每次执行时使用不同的变量产生不同的预测值)
然后在测量所有新数据集之后......您运行测试,向您解释数据分析......然后您将所有这些数据与模拟数据测试您的非空数据并希望找出任何,如果,您可以使用其他 x 变量/情况来最准确地预测实际值。
当您试图通过研究与 NULL 的关系来调整您所招致的错误惩罚时,这使您比仅仅一个回归插补更接近。
是的,所以它会变得混乱。
这是处理 NULL 值的所有技术的一个很好的总结,以及如何识别你拥有的 null 值的类型以及如何处理它...... https://www.ncbi.nlm.nih.gov/ pmc/articles/PMC3668100/