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

PythonPythonBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии мы узнаем о методе cumprod() в библиотеке Python Pandas. Метод cumprod() используется для вычисления накопительного произведения DataFrame или Series вдоль заданной оси. Возвращает новый DataFrame или Series с тем же размером, что и исходный, содержащий накопительные значения произведения.

Советы по работе с ВМ

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

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

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

Импортируем необходимые библиотеки

Для начала нам нужно импортировать библиотеку pandas, которая позволит нам работать с DataFrame.

import pandas as pd

Создаем DataFrame

Далее мы создадим DataFrame, на котором сможем выполнить операцию накопительного произведения. Создадим простой DataFrame с двумя столбцами 'A' и 'B' с использованием функции pd.DataFrame().

## Create the DataFrame
df = pd.DataFrame({"A":[1, 2, 3, 4], "B":[5, 6, 7, 8]})
print(df)

Найдем накопительное произведение по оси индекса

Теперь используем метод cumprod(), чтобы вычислить накопительное произведение по оси индекса. Мы можем указать параметр оси как 0 или 'index', чтобы выполнить операцию вдоль оси индекса. Результатом будет новый DataFrame с накопительными значениями произведения.

## Find cumulative product over index axis
cumulative_product_index = df.cumprod(axis=0)
print(cumulative_product_index)

Найдем накопительное произведение по оси столбцов

Аналогично мы можем вычислить накопительное произведение по оси столбцов, указав параметр оси как 1 или 'columns'. Это выполнит операцию вдоль оси столбцов и вернет новый DataFrame с накопительными значениями произведения.

## Find cumulative product over column axis
cumulative_product_columns = df.cumprod(axis=1)
print(cumulative_product_columns)

Обработка пропущенных значений

Если DataFrame содержит пропущенные или NaN значения, мы можем их обработать с использованием параметра skipna. По умолчанию skipna установлен в True, что означает, что NA/null значения исключаются. Если мы хотим включить эти значения в вычисление накопительного произведения, мы можем установить skipna в False.

## Create a DataFrame with missing values
df_with_null = pd.DataFrame({"A":[1, 2, 3, 4], "B":[5, 6, None, 8]})
print(df_with_null)

## Find cumulative product with missing values
cumulative_product_null = df_with_null.cumprod(skipna=False)
print(cumulative_product_null)

Резюме

Поздравляем! Вы узнали, как использовать метод cumprod() в Python Pandas для вычисления накопительного произведения DataFrame или Series вдоль заданной оси. Помните, что метод cumprod() - это полезный инструмент для анализа тенденций и паттернов роста в ваших данных. Продолжайте экспериментировать и изучать другие методы, доступные в библиотеке Pandas, чтобы расширить свои возможности по манипуляции данными.