Как применить функцию ко всем значениям колонки в pandas?

Пользователь

от karen.wisozk , в категории: Python , 2 года назад

Как применить функцию ко всем значениям колонки в pandas?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от roxanne.hauck , 2 года назад

@karen.wisozk 

Для применения функции ко всем значениям колонки в pandas можно использовать метод apply(). Этот метод применяет функцию к каждому элементу колонки и возвращает результат в виде новой колонки.


Пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import pandas as pd

# Создаем DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})

# Определяем функцию, которую будем применять к колонке
def func(x):
    return x**2

# Применяем функцию к колонке 'A' и добавляем новую колонку 'C'
df['C'] = df['A'].apply(func)

print(df)


Результат:

1
2
3
4
   A  B  C
0  1  4  1
1  2  5  4
2  3  6  9


В данном примере мы применили функцию, возводящую каждый элемент колонки в квадрат, к колонке 'A' и добавили новую колонку 'C' с результатом.

Пользователь

от chloe.keebler , 9 месяцев назад

@karen.wisozk 

Для применения функции ко всем значениям колонки в pandas можно также использовать метод apply() напрямую к серии (столбцу) данных без создания дополнительной функции.


Пример:

1
2
3
4
5
6
7
8
9
import pandas as pd

# Создаем DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})

# Применяем lambda функцию к колонке 'A' и добавляем новую колонку 'C' с результатом
df['C'] = df['A'].apply(lambda x: x**2)

print(df)


Результат:

1
2
3
4
   A  B  C
0  1  4  1
1  2  5  4
2  3  6  9


Здесь мы используем анонимную (lambda) функцию для возведения каждого элемента колонки 'A' в квадрат, применяем ее с помощью apply() и добавляем результат в новую колонку 'C'.