Algorithm 删除包含无效元素的矩阵行或列,保留PCA的最大有效元素输入

Algorithm 删除包含无效元素的矩阵行或列,保留PCA的最大有效元素输入,algorithm,graph-theory,data-analysis,Algorithm,Graph Theory,Data Analysis,背景: 我在MxN(N>>M)矩阵上进行PCA,矩阵中有一些无效值。我无法推断这些值,所以我需要删除所有这些值,这意味着我需要删除整个相应的行或列。当然,我想保留最大数量的数据。无效条目代表约30%的数据,但大部分数据完全填充在几行中,很少分散在矩阵的其余部分 一些可能的方法: 类似于,我将矩阵格式化为有效数据项等于1,无效项等于巨大的负数。然而,所有提出的解决方案都具有指数复杂性,我的问题更简单 计算每行或每列的比率(无效数据/有效数据),并删除最高比率。重新计算子矩阵的比率并删除最高的比

背景: 我在MxN(N>>M)矩阵上进行PCA,矩阵中有一些无效值。我无法推断这些值,所以我需要删除所有这些值,这意味着我需要删除整个相应的行或列。当然,我想保留最大数量的数据。无效条目代表约30%的数据,但大部分数据完全填充在几行中,很少分散在矩阵的其余部分

一些可能的方法:

  • 类似于,我将矩阵格式化为有效数据项等于1,无效项等于巨大的负数。然而,所有提出的解决方案都具有指数复杂性,我的问题更简单

  • 计算每行或每列的比率(无效数据/有效数据),并删除最高比率。重新计算子矩阵的比率并删除最高的比率。(不确定一步可以安全删除多少行或列),依此类推,直到没有剩余的无效数据。这似乎是一个不错的解决方案,但我不确定它总是给出最佳解决方案


我的猜测是,这是一个标准的数据分析问题,但令人惊讶的是,我无法在线找到解决方案。

这似乎是一个更适合cs.stackexchange.com的算法问题。由于列的数量远大于行的数量,我想删除一行比删除列的效果更大。如果没有关于上下文的更多细节,很难帮助您。只有当我们有一个比较解决方案的标准时,它才会成为一个算法问题。这似乎是一个更适合cs.stackexchange.com的算法问题。由于列的数量远大于行的数量,我想删除一行比删除列的效果更大。如果没有关于上下文的更多细节,很难帮助您。只有当我们有一个比较解决方案的标准时,它才会成为一个算法问题