Как фильтровать данные в Python с помощью панд? - PullRequest
0 голосов
/ 05 июля 2018

У меня есть список:

list = ['firstname', 'lastname', 'email', 'phonenumber']

Я хочу повторить для этого списка как:

import pandas as pd

df = pd.read_csv(filepath)

df[ pd.notnull(df[firstname]) | pd.notnull(df[lastname]) | 
    pd.notnull(df[email]) | pd.notnull(df[phonenumber])]

Как выполнить вышеуказанный процесс с помощью цикла?

Ответы [ 2 ]

0 голосов
/ 05 июля 2018

Вы можете filter, используя columns с нулевыми значениями.

df.isnull().any()
>> 
firstname True
lastname True
...

df.isnull().sum()

Показывает все столбцы и общее количество NaN каждого столбца (ваш список).

0 голосов
/ 05 июля 2018

Во-первых, не скрывайте имена встроенных классов:

L = ['firstname', 'lastname', 'email', 'phonenumber']

Затем используйте notnull с any вдоль axis=1, чтобы создать маску логической серии:

res = df[df[L].notnull().any(1)]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...