Панды: отбрасывать столбцы, чтобы максимизировать строки без NA - PullRequest
0 голосов
/ 14 ноября 2018

У меня есть набор данных со многими столбцами и значительным количеством строк, где один столбец равен na.Я хотел бы сделать что-то вроде df.dropna(), но по столбцам и с целью максимизации количества строк без na.

Немного фона в наборе данных.,,многие из столбцов могут считаться частью набора данных «core», и эти столбцы ядра почти всегда будут без na.Другие столбцы (неосновные) являются менее полными, но различаются по своей полноте.В неосновных столбцах отсутствует шаблон, если значение отсутствует - строка, в которой отсутствуют данные в одном столбце, вряд ли будет отсутствовать в другом столбце.

Существует ли установленный способ решенияэтот?Если не .,.

Я думал, что будет возможно:

  1. Извлечь имена основных столбцов в список
  2. Извлечь имена неосновных столбцов вдругой список
  3. Используйте https://docs.python.org/3/library/itertools.html#itertools.combinations для генерации всех возможных комбинаций неосновных столбцов (каждый столбец сам по себе, затем все комбинации из 2, все комбинации из 3 и т. д.).
  4. Для каждой комбинации основных столбцов и текущей сгенерированной комбинации иттераторов неосновных столбцов задайте подкадр данных и считайте строки без значения.
  5. Зарегистрируйте все из них и выберите тот, который дал наибольшее количество строк.

У кого-нибудь есть опыт, чтобы сделать что-то подобное?

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...