Как удалить повторяющиеся столбцы в Pandas (с примерами)


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

df.T.drop_duplicates().T

В следующих примерах показано, как использовать этот синтаксис на практике.

Пример: удалить повторяющиеся столбцы в Pandas

Предположим, у нас есть следующие Pandas DataFrame:

import pandas as pd

#create DataFrame with duplicate columns
df = pd.DataFrame({'team': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
 'points': [25, 12, 15, 14, 19, 23, 25, 29],
 'assists': [25, 12, 15, 14, 19, 23, 25, 29],
 'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]})

df.columns = ['team', 'points', 'points', 'rebounds']

#view DataFrame
df

 team points points rebounds
0 A 25 25 11
1 A 12 12 8
2 A 15 15 10
3 A 14 14 6
4 B 19 19 6
5 B 23 23 5
6 B 25 25 9
7 B 29 29 12

Мы можем использовать следующий код, чтобы удалить повторяющийся столбец «точки»:

#remove duplicate columns
df.T.drop_duplicates().T

 team points rebounds
0 A 25 11
1 A 12 8
2 A 15 10
3 A 14 6
4 B 19 6
5 B 23 5
6 B 25 9
7 B 29 12

Обратите внимание, что столбец «точки» был удален, а все остальные столбцы остались в кадре данных.

Также стоит отметить, что этот код удалит повторяющиеся столбцы, даже если столбцы имеют разные имена, но содержат одинаковые значения.

Например, предположим, что у нас есть следующий кадр данных pandas:

import pandas as pd

#create DataFrame with duplicate columns
df = pd.DataFrame({'team': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
 'points': [25, 12, 15, 14, 19, 23, 25, 29],
 'points2': [25, 12, 15, 14, 19, 23, 25, 29],
 'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
df

 team points points2 rebounds
0 A 25 25 11
1 A 12 12 8
2 A 15 15 10
3 A 14 14 6
4 B 19 19 6
5 B 23 23 5
6 B 25 25 9
7 B 29 29 12

Обратите внимание, что столбцы «точки» и «точки2» содержат одинаковые значения.

Мы можем использовать следующий код, чтобы удалить повторяющийся столбец «points2»:

#remove duplicate columns
df.T.drop_duplicates().T

 team points rebounds
0 A 25 11
1 A 12 8
2 A 15 10
3 A 14 6
4 B 19 6
5 B 23 5
6 B 25 9
7 B 29 12

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

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

Как удалить повторяющиеся строки в Pandas DataFrame
Как удалить столбцы в Pandas
Как исключить столбцы в Pandas

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