Метод apply() для DataFrame в Pandas

Beginner

Введение

В этом лабе мы узнаем, как использовать метод apply() в библиотеке Pandas для Python. Метод apply() позволяет применить функцию к каждой строке или столбцу DataFrame, и он полезен для выполнения вычислений или преобразований над нашими данными.

Советы по ВМ

После запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.

Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook не загрузится полностью. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.

Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.

Импортировать необходимые библиотеки

Для начала нам нужно импортировать библиотеку Pandas, которая предоставляет объект DataFrame и метод apply(). Также мы можем импортировать другие библиотеки, если они нужны для наших вычислений.

import pandas as pd

Создать DataFrame

Далее, создадим DataFrame, с которым будем работать. Мы можем определить данные с использованием списка Python или словаря. Для простоты давайте используем словарь, где ключи представляют имена столбцов, а значения - данные.

data = {
    'Name': ['John', 'Emma', 'David', 'Mary'],
    'Age': [25, 30, 35, 40],
    'Salary': [50000, 60000, 70000, 80000]
}
df = pd.DataFrame(data)
print(df)

Определить функцию

Теперь определим функцию, которую мы можем применить к нашему DataFrame. Эта функция будет принимать один параметр, который будет строкой или столбцом DataFrame.

def double(x):
    return x * 2

Применить функцию к столбцу

Мы можем использовать метод apply(), чтобы применить нашу определенную функцию к столбцу DataFrame. В этом примере применим функцию double() к столбцу 'Salary'.

df['Salary'] = df['Salary'].apply(double)
print(df)

Применить функцию к строке

Мы также можем применить нашу функцию к строке DataFrame, указав axis=1 в методе apply(). В этом примере применим функцию double() к каждой строке DataFrame.

df = df.apply(double, axis=1)
print(df)

Применить lambda-функцию

Вместо определения отдельной функции мы можем использовать лямбда-функцию встроенную в метод apply(). Лямбда-функция - это небольшая анонимная функция, которая может принимать любое количество аргументов и возвращать результат. В этом примере применим лямбда-функцию к столбцу 'Age', чтобы вычислить квадрат каждого значения.

df['Age'] = df['Age'].apply(lambda x: x ** 2)
print(df)

Резюме

В этом практическом занятии мы узнали, как использовать метод apply() в Pandas для применения функции к каждой строке или столбцу DataFrame. Мы увидели, как определить функцию и применить ее к столбцу или строке, а также как использовать лямбда-функцию встроенную в метод apply(). Метод apply() - это мощный инструмент для выполнения вычислений или преобразований над нашими данными, и он может помочь упростить наши задачи анализа данных.