Как удалить столбцы по индексу в Pandas


Вы можете использовать следующий синтаксис, чтобы удалить один столбец из pandas DataFrame по номеру индекса:

#drop first column from DataFrame
df.drop (df.columns [0], axis= 1 , inplace= True )

И вы можете использовать следующий синтаксис, чтобы удалить несколько столбцов из pandas DataFrame по номерам индексов:

#drop first, second, and fourth column from DataFrame
cols = [0, 1, 3]
df.drop (df.columns [cols], axis= 1 , inplace= True )

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

#define list of columns
cols = [x for x in range(df.shape [1])]

#drop second column
cols. remove (1)

#view resulting DataFrame
df.iloc [:, cols]

В следующих примерах показано, как на практике удалять столбцы по индексу.

Пример 1. Удаление одного столбца по индексу

В следующем коде показано, как удалить первый столбец в кадре данных pandas:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': ['Mavs', 'Lakers', 'Spurs', 'Cavs'],
 'first': ['Dirk', 'Kobe', 'Tim', 'Lebron'],
 'last': ['Nowitzki', 'Bryant', 'Duncan', 'James'],
 'points': [26, 31, 22, 29]})

#drop first column from DataFrame
df.drop (df.columns [0], axis= 1 , inplace= True )

#view resulting dataFrame
df

 first last points
0 Dirk Nowitzki 26
1 Kobe Bryant 31
2 Tim Duncan 22
3 Lebron James 29

Пример 2. Удаление нескольких столбцов по индексу

В следующем коде показано, как удалить несколько столбцов в кадре данных pandas по индексу:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': ['Mavs', 'Lakers', 'Spurs', 'Cavs'],
 'first': ['Dirk', 'Kobe', 'Tim', 'Lebron'],
 'last': ['Nowitzki', 'Bryant', 'Duncan', 'James'],
 'points': [26, 31, 22, 29]})

#drop first, second and fourth columns from DataFrame
cols = [0, 1, 3] 
df.drop (df.columns [cols], axis= 1 , inplace= True )

#view resulting dataFrame
df

 last
0 Nowitzki
1 Bryant
2 Duncan
3 James

Пример 3. Удаление одного столбца по индексу с дубликатами

В следующем коде показано, как удалить столбец по номеру индекса в кадре данных pandas, когда существуют повторяющиеся имена столбцов:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': ['Mavs', 'Lakers', 'Spurs', 'Cavs'],
 'last': ['Nowitzki', 'Bryant', 'Duncan', 'James'],
 'last': ['Nowitzki', 'Bryant', 'Duncan', 'James'],
 'points': [26, 31, 22, 29]},
 columns=['team', 'last', 'last', 'points'])

#define list of columns range
cols = [x for x in range(df.shape [1])]

#remove second column in DataFrame
cols. remove (1)

#view resulting DataFrame
df.iloc [:, cols]

 team last points
0 Mavs Nowitzki 26
1 Lakers Bryant 31
2 Spurs Duncan 22
3 Cavs James 29

Дополнительные ресурсы

Как объединить два столбца в Pandas
Pandas: как сортировать столбцы по имени
Pandas: как найти разницу между двумя столбцами
Pandas: как суммировать столбцы на основе условия

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.