熊猫:删除列以最大化不使用NA的行

时间:2018-11-13 23:19:17

标签: python pandas

我有一个数据集,其中包含许多列和大量行,其中一列是na。我想做类似df.dropna()的事情,但是要按列进行,目的是在没有na的情况下最大化行数。

数据集上的一些背景。 。 。许多列可以被视为“核心”数据集的一部分,而这些核心列几乎总是没有na。其他列(非核心)的完整性较差,但完整性有所不同。在非核心列中,没有模式可以确定是否缺少值-一列中缺少数据的行不太可能会丢失另一列中的数据。

是否有确定的方法可以解决此问题?如果不 。 。

我当时认为有可能:

  1. 将核心列的名称提取到列表中
  2. 将非核心列的名称提取到另一个列表中
  3. 使用https://docs.python.org/3/library/itertools.html#itertools.combinations 生成非核心列的所有可能组合(每列依次显示,然后是2的所有组合,等等3的组合)。
  4. 对于核心列的每个组合和当前由itterator生成的非核心列的组合,将数据帧作为子集并计算没有na的行。
  5. 记录所有这些内容,然后选择产生最多行的记录。

有人有做这样的经历吗?

谢谢

0 个答案:

没有答案