Как добавить столбец в pandas? Узнайте простой способ с помощью этих советов и смайликов!

Чтобы добавить столбец в pandas, вы можете использовать метод assign() или присвоить новый столбец к существующему датафрейму.

Метод assign()

Метод assign() создает новый датафрейм с добавленным столбцом.


import pandas as pd

# Создаем исходный датафрейм
df = pd.DataFrame({'A': [1, 2, 3],
                   'B': [4, 5, 6]})

# Добавляем новый столбец 'C' с помощью assign()
df_new = df.assign(C=[7, 8, 9])

# Выводим обновленный датафрейм
print(df_new)
    

Присвоение нового столбца

Вы также можете просто присвоить новый столбец к существующему датафрейму.


import pandas as pd

# Создаем исходный датафрейм
df = pd.DataFrame({'A': [1, 2, 3],
                   'B': [4, 5, 6]})

# Присваиваем новый столбец 'C' к датафрейму
df['C'] = [7, 8, 9]

# Выводим обновленный датафрейм
print(df)
    

Детальный ответ

Как добавить столбец в pandas

Библиотека pandas - это мощный инструмент для анализа данных в языке программирования Python. Одной из часто используемых операций в pandas является добавление нового столбца в существующий DataFrame. В этой статье мы рассмотрим, как добавить столбец в pandas и предоставим примеры кода.

Первым шагом является импорт библиотеки pandas:


import pandas as pd

Добавление столбца с помощью оператора присваивания

Простейший способ добавить столбец в pandas - использовать оператор присваивания. Вы можете назначить новый столбец на основе существующих данных или создать пустой столбец и заполнить его значением.

Ниже приведен пример добавления нового столбца с именем "age" в DataFrame "df" с помощью оператора присваивания:


df['age'] = [25, 30, 35, 40]

Это присваивает новый столбец "age" в DataFrame "df" со значениями [25, 30, 35, 40]. Обратите внимание, что длина списка должна быть равна количеству строк в DataFrame. Если длина списка не соответствует, возникнет ошибка.

Вы также можете назначить новый столбец на основе существующего столбца. В следующем примере мы создадим столбец "dob_year", используя столбец "dob", содержащий дату рождения в формате ГГГГ-ММ-ДД:


df['dob_year'] = pd.to_datetime(df['dob']).dt.year

В этом примере мы используем метод pd.to_datetime(), чтобы преобразовать столбец "dob" в тип данных даты и времени, а затем используем метод dt.year для извлечения года из даты. Результат будет назначен новому столбцу "dob_year".

Добавление столбца с помощью метода assign()

Метод assign() предоставляет более гибкий способ добавления столбцов в pandas. Он позволяет добавлять несколько столбцов одновременно и выполнять операции над существующими столбцами.

Ниже приведен пример использования метода assign() для добавления двух новых столбцов "age_group" и "is_employed" на основе существующего столбца "age" и условия занятости:


df = df.assign(age_group=lambda x: pd.cut(x['age'], bins=[0, 18, 30, 50, float('inf')], labels=['<18', '18-30', '30-50', '50+']),
               is_employed=lambda x: x['employment_status'] == 'Employed')

В этом примере мы используем метод assign() для создания двух новых столбцов "age_group" и "is_employed". В первом аргументе мы задаем имя нового столбца, а во втором аргументе мы определяем, какие значения назначаются этому столбцу.

Второй аргумент может быть функцией, которая принимает DataFrame в качестве аргумента и возвращает Series или массив. В примере мы используем лямбда-функции для определения значения новых столбцов на основе существующих столбцов и условия.

Добавление столбца с помощью метода insert()

Метод insert() позволяет добавлять столбцы на определенную позицию в DataFrame. Вы указываете номер позиции, куда нужно вставить столбец, а также задаете имя и значения нового столбца.

Ниже приведен пример использования метода insert() для добавления нового столбца с именем "gender" на позицию 2:


df.insert(2, 'gender', ['M', 'F', 'M', 'F'])

В этом примере мы используем метод insert() для вставки нового столбца с именем "gender" на позицию 2 в DataFrame "df". Значения нового столбца ['M', 'F', 'M', 'F'].

Обратите внимание, что индексация столбцов в pandas начинается с 0, поэтому позиция 2 соответствует третьему столбцу в DataFrame.

Заключение

В этой статье мы рассмотрели различные способы добавления столбцов в pandas. Вы можете использовать оператор присваивания, метод assign() и метод insert(), в зависимости от ваших потребностей. Оба метода предлагают гибкость и удобство для добавления новых столбцов в DataFrame.

Видео по теме

Датафреймы pandas. Добавление столбцов

Pandas Базовый №4. Операции со столбцами DataFrame

Pandas Базовый №3. Отбор строк и столбцов, Размерность, Импорт CSV

Похожие статьи:

Как добавить столбец в pandas? Узнайте простой способ с помощью этих советов и смайликов!