Исследовательский анализ данных - удаление всех столбцов с использованием вывода из pd.Series.nunique - PullRequest
0 голосов
/ 06 февраля 2019

Я провожу EDA в наборе данных с 96 переменными, который является частью еще большего набора данных. Я хочу отбросить те столбцы, где в столбце есть только одно значение.

data_SS.apply (pd.Series.nunique) # это показало, что у меня было более десятка переменных, в которых было одно значение.Они не были релевантными переменными.

Я определил свои #columns с помощью заголовков строк

columns = ['aaa', 'bbb', 'ccc', 'ddd' .....]

, а затем отбросил столбцы.

data.drop(columns, inplace = True, axis = 1)

Это помогло.Однако мне интересно, есть ли способ перебрать выходные данные из pd.Series.nunique, поскольку я в основном хочу отбросить столбцы, где выходное значение == 1.Я уверен, что есть более элегантное решение.

1 Ответ

0 голосов
/ 06 февраля 2019

Вы можете создать список столбцов, проиндексировав вышеупомянутую серию и отбросив все столбцы,

cols_to_drop = df1.loc[:,df1.nunique().eq(1)].columns
df1.drop(cols_to_drop, inplace = True, axis = 1)

Другой способ поиска столбцов для удаления,

s = df1.nunique().eq(1)
cols_to_drop = s.index[s]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...