如何输入不均匀缺失的数据

How to imput inhomogeneously missing data

我有一个形状为 2701x128 的数据框,它有很多缺失值。问题是有些行可以包含 95% 的填充数据,而有些 - 只有 5%。让我试着想象一下:

X 轴是行数(排序后),y 轴是非零值的数量(已排序,类似直方图)

X 轴是列数(排序后),y 轴表示所有行中有多少非零列(已排序,类似直方图)

我需要:我需要尽可能准确地输入数据,因为这是我需要解决的问题。 问题: 我无法用均值、中位数和其他统计矩对所有内容进行插值,因为它非常粗糙。我也无法创建通常的学习模型,因为缺失数据中没有结构。

你能不能推荐一些像学习模型一样准确的东西,它可以对分布进行建模,但能够处理完全随机的缺失。因此,显然,主要问题是从这种非结构化缺失中创建数据集。我目前找不到解决方案。

我认为第一个问题是将数据视为行结构 尝试将其视为基于列的

有一款日本游戏叫做数独,我可以建议你遵循它的策略

首先你需要找出最多(但不是 100% 百分比填充的列) 让我们将其称为 B 列 缺失数据的百分比是多少?如果它是一小部分 - 构建直方图并查看其 PDF - 可能是简单的均值和中位数可以解决这个问题?

是否有任何 100% 填充的列?让我们称其为 G 列 尝试找出是否有任何非完全填充的列与填充的列密切相关。如果是这样 - 根据这种相关性估算缺失值 - 您可以尝试使用超过 2 个填充列进行基本回归

您甚至可以尝试从一组其他未完全填充的列中恢复 B 列中的部分数据,并通过另一组未完全填充的列恢复部分数据,您可以多次这样做

当然你会有一种弗兰肯斯坦怪物 - 但它值得一试,你总是可以根据 CV 评估它的效果有多好

然而这只是一个简短的草图