Вы можете использовать следующие методы, чтобы сохранить только определенные столбцы в pandas DataFrame:
Способ 1: укажите столбцы, которые нужно сохранить
#only keep columns 'col1' and 'col2'
df[['col1', 'col2']]
Способ 2: укажите столбцы для удаления
#drop columns 'col3' and 'col4'
df[df.columns [~df.columns.isin(['col3', 'col4'])]]
В следующих примерах показано, как использовать каждый метод со следующими пандами DataFrame:
import pandas as pd
#create DataFrame
df = pd.DataFrame({'team': ['A', 'A', 'A', 'B', 'B', 'B'],
'points': [11, 7, 8, 10, 13, 13],
'assists': [5, 7, 7, 9, 12, 9],
'rebounds': [11, 8, 10, 6, 6, 5]})
#view DataFrame
df
team points assists rebounds
0 A 11 5 11
1 A 7 7 8
2 A 8 7 10
3 B 10 9 6
4 B 13 12 6
5 B 13 9 5
Способ 1: укажите столбцы, которые нужно сохранить
В следующем коде показано, как определить новый DataFrame, который содержит только столбцы «команда» и «очки»:
#create new DataFrame and only keep 'team' and 'points' columns
df2 = df[['team', 'points']]
#view new DataFrame
df2
team points
0 A 11
1 A 7
2 A 8
3 B 10
4 B 13
5 B 13
Обратите внимание, что результирующий DataFrame сохраняет только два указанных нами столбца.
Способ 2: укажите столбцы для удаления
В следующем коде показано, как определить новый DataFrame, который удаляет столбцы «assists» и «rebounds» из исходного DataFrame:
#create new DataFrame and that drops 'assists' and 'rebounds'
df2 = df[df.columns [~df.columns.isin(['assists', 'rebounds'])]]
#view new DataFrame
df2
team points
0 A 11
1 A 7
2 A 8
3 B 10
4 B 13
5 B 13
Обратите внимание, что результирующий DataFrame удаляет столбцы «assists» и «rebounds» из исходного DataFrame и сохраняет оставшиеся столбцы.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции в pandas:
Как удалить первый столбец в Pandas DataFrame
Как удалить повторяющиеся столбцы в Pandas
Как удалить столбцы по индексу в Pandas