Удаление строк в DataFrame с помощью условий для значений столбцов, равных None - PullRequest
1 голос
/ 11 марта 2019

У меня есть фрейм данных, в котором есть столбец "status". Я пытаюсь удалить все строки, в которых столбцы "status" содержат значение None.

Я сделал это так:

oppty_oppline.dropna(subset = ['status'])

Но значения «Нет» не были удалены.Я проверяю так:

oppty_oppline.status.unique()

Результат:

array(['Cancelled by ', 'Cancelled by Customer',
       'Account not selected', None,
       'Won - Deliver & Validate by ', 'Lost',
       'Won - Deliver & Validate by Partner',
       'Won-Deliver&Validate by ',
       'Cancelled by ', 'Won by another',
       'Won- Deliver and Validate by Partner',
       'Won – Deliver & Validate by Partner'], dtype=object)

Я вижу, что значения 'None' не рассматриваются как строки.

Любая идея, пожалуйста, помогитея?

Спасибо тебе

1 Ответ

2 голосов
/ 11 марта 2019

Если None значение работает нормально:

a = np.array(['Cancelled by ', 'Cancelled by Customer',
       'Account not selected', None])

oppty_oppline = pd.DataFrame({'status':a})
print (oppty_oppline)
                  status
0          Cancelled by 
1  Cancelled by Customer
2   Account not selected
3                   None

df = oppty_oppline.dropna(subset = ['status'])
print (df)
                  status
0          Cancelled by 
1  Cancelled by Customer
2   Account not selected

Но если строка None нужно удалить строки на boolean indexing:

a = np.array(['Cancelled by ', 'Cancelled by Customer',
       'Account not selected', 'None'])

oppty_oppline = pd.DataFrame({'status':a})
print (oppty_oppline)
                  status
0          Cancelled by 
1  Cancelled by Customer
2   Account not selected
3                   None

#not remove None, because string
df = oppty_oppline.dropna(subset = ['status'])
print (df)
0          Cancelled by 
1  Cancelled by Customer
2   Account not selected
3                   None

df = oppty_oppline[oppty_oppline.status != 'None']
print (df)
0          Cancelled by 
1  Cancelled by Customer
2   Account not selected
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...