O método Series.cumprod()
é usado para localizar o produto cumulativo de uma série. No produto cumulativo, o comprimento da série retornada é o mesmo da série de entrada e cada elemento é igual ao produto do valor atual e de todos os valores anteriores.
Sintaxe: Series.cumprod(axis=None, skipna=True)
Parâmetros:
- axis: 0 ou 'index' para operação em linha e 1 ou 'columns' para operação em coluna
- skipna: Ignora a adição de NaN para elementos após o próximo se True.
Tipo de retorno: Series
Exemplo #1: Neste exemplo, uma série é criada a partir de uma lista python. A lista também contém um valor Nulo e o parâmetro skipna
é definido como padrão, ou seja, True
.
# importa o módulo pandas import pandas as pd # importa o módulo numpy import numpy as np # criando uma lista de valores values = [2, 10, np.nan, 4, 3, 0, 1] # criando uma serie a partir de uma lista series = pd.Series(values) # chamando o método cumprod cumprod = series.cumprod() # mostrando o resultado print(cumprod)
Saída:
0 2.0 1 20.0 2 NaN 3 80.0 4 240.0 5 0.0 6 0.0 dtype: float64
Explicação: cumprod
é a multiplicação dos valores atuais e de todos os valores anteriores. Portanto, o primeiro elemento é sempre igual ao primeiro da série do chamador.
2 20 (2 x 10) NaN (20 x NaN = NaN, qualquer coisa multiplicado por Nan retorna NaN) 80 (20 x 4) 240 (80 x 3) 0 (240 x 0) 0 (0 x 1)
Exemplo #2: skipna=False
. Neste exemplo, uma série é criada como no exemplo acima. Mas o parâmetro skipna
é mantido como False
. Portanto, os valores NULL não serão ignorados e serão comparados sempre que ocorrer.
# importa o módulo pandas import pandas as pd # importa o módulo numpy import numpy as np # criando uma lista de valores values = [9, 4, 33, np.nan, 0, 1, 76, 5] # criando uma serie a partir de uma lista series = pd.Series(values) # chamando o método cumprod cumprod = series.cumprod(skipna=False) # mostrando o resultado print(cumprod)
Saída:
0 9.0 1 36.0 2 1188.0 3 NaN 4 NaN 5 NaN 6 NaN 7 NaN dtype: float64
Explicação: Assim como no exemplo acima, o produto do valor atual e todos os valores anteriores foram retornados em todas as posições. Como NaN Multiplied com qualquer coisa também é NaN, e o parâmetro skipna foi mantido como False, portanto, todos os valores após a ocorrência de NaN também são NaN.
Artigo escrito por Kartikaybhutani e traduzido por Acervolima de Python | Pandas series.cumprod() to find Cumulative product of a Series.
0 comentários:
Postar um comentário