Эффективные методы удаления повторяющихся столбцов в Pandas

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

  1. Метод 1: использование транспозиции DataFrame
    • Транспонируйте DataFrame с помощью атрибута .T.
    • Используйте метод .drop_duplications(), чтобы удалить повторяющиеся строки.
    • Транспонируйте DataFrame обратно в исходную форму, используя .T.
df = df.T.drop_duplicates().T
  1. Метод 2: использование проекции DataFrame
    • Создайте новый DataFrame, выбрав только те столбцы, которые не являются повторяющимися.
    • Используйте метод доступа .locс логической маской, чтобы отфильтровать повторяющиеся столбцы.
df = df.loc[:, ~df.columns.duplicated()]

<старый старт="3">

  • Метод 3: использование запроса в стиле T-SQL DataFrame
    • Используйте метод df.query(), чтобы указать строку запроса, которая выбирает столбцы без дубликатов.
  • df = df.query('not column_name.duplicated()')
    1. Метод 4: использование группы DataFrame By
      • Сгруппируйте столбцы по именам и выберите первый столбец из каждой группы.
      • Переназначьте полученный DataFrame, чтобы перезаписать исходный.
    df = df.groupby(df.columns, axis=1).first()
    1. Метод 5: использование словаря DataFrame
      • Преобразуйте DataFrame в словарь пар столбец-значение.
      • Создайте новый словарь, в котором ключами будут уникальные имена столбцов.
      • Преобразуйте новый словарь обратно в DataFrame.
    df = pd.DataFrame({col: df[col] for col in df})