DataFrame.prod() / Series.prod()

Метод prod() возвращает произведение всех элементов по оси. Аналог sum(), но для умножения.

Сигнатура

DataFrame.prod(axis=0, skipna=True, numeric_only=False,
               min_count=0, **kwargs)

Параметры

  • axis — ось: 0 (по столбцам) или 1 (по строкам).

  • skipna — пропускать ли NaN.

  • numeric_only — учитывать только числовые столбцы.

  • min_count — минимум валидных значений; иначе результат — NaN.

Возвращаемое значение

Скаляр для Series или Series для DataFrame.

Примеры

Пример 1. Произведение коэффициентов усиления каскадов

import pandas as pd

gains = pd.Series([2.0, 5.0, 1.5], index=["pre", "amp", "out"])
print(gains.prod())
15.0

Пример 2. По столбцам DataFrame

import pandas as pd

df = pd.DataFrame({
    "k1": [2, 3, 4],
    "k2": [1, 2, 5],
})
print(df.prod())
k1    24
k2    10
dtype: int64

Пример 3. По строкам

import pandas as pd

df = pd.DataFrame({"a": [2, 3], "b": [4, 5]})
print(df.prod(axis=1))
0     8
1    15
dtype: int64

Пример 4. С NaN

import pandas as pd
import numpy as np

s = pd.Series([2, np.nan, 3])
print("skipna=True:", s.prod())
print("skipna=False:", s.prod(skipna=False))
skipna=True: 6.0
skipna=False: nan

Пример 5. min_count для пустой выборки

import pandas as pd
import numpy as np

s = pd.Series([np.nan, np.nan])
print(s.prod(min_count=1))
nan

См. также

Примечание

Лицензия и источники

Техническое описание функции адаптировано из официальной документации Pandas (https://pandas.pydata.org/docs/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.