Введение
В этом лабе мы узнаем, как использовать метод 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() - это мощный инструмент для выполнения вычислений или преобразований над нашими данными, и он может помочь упростить наши задачи анализа данных.