Выберите все, кроме списка столбцов в панде dataframe

Можно ли выбрать отрицание заданного списка в кадре данных pandas ?. Например, скажем, у меня есть следующий фрейм данных

T1_V2  T1_V3 T1_V4 T1_V5 T1_V6 T1_V7 T1_V8
1     15      3      2     N     B     N         
4     16     14      5     H     B     N            
1     10     10      5     N     K     N  

и я хочу получить все столбцы, кроме столбца T1_V6. Я бы обычно так делал:

df = df[["T1_V2","T1_V3","T1_V4","T1_V5","T1_V7","T1_V8"]]

У меня вопрос о том, есть ли способ решить эту проблему, как-то так

df = df[!["T1_V6"]]
10 голосов | спросил MedAli 16 AM000000100000002831 2015, 10:29:28

4 ответа


0

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

df[df.columns - ["T1_V6"]]

Однако «установить минус» не работает для числовых имен столбцов, поэтому это, вероятно, предпочтительный способ сделать это (работает также с числовыми именами столбцов):

df[df.columns.difference(["T1_V6"])]
ответил Pekka 16 AM000000100000004531 2015, 10:53:45
0

Для полноты вы также можете легко использовать drop для этого:

df.drop(["T1_V6"], axis=1)
ответил joris 16 AM000000110000004031 2015, 11:37:40
0

Я бы предложил использовать DataFrame.drop ()

columns_to _exclude = ['T1_V6']
old_dataframe = #Has all columns
new_dataframe = old_data_frame.drop(columns_to_exclude, axis = 1)

Вы можете использовать на месте, чтобы внести изменения в сам исходный кадр данных

old_dataframe.drop(columns_to_exclude, axis = 1, inplace = True)
#old_dataframe is changed
ответил yesemsanthoshkumar 16 AM000000110000004631 2015, 11:41:46
0

Вам необходимо использовать списки для понимания :

[col for col in df.columns if col != 'T1_V6']
ответил Or Duan 16 AM000000110000001731 2015, 11:02:17

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132