Python | Pandas series.cumprod() para encontrar el producto acumulativo de una serie

Python es un excelente lenguaje para realizar análisis de datos, principalmente debido al fantástico ecosistema de paquetes de Python centrados en datos. Pandas es uno de esos paquetes y facilita mucho la importación y el análisis de datos.

Pandas Series.cumprod()se utiliza para encontrar el producto acumulativo de una serie. En el producto acumulativo, la longitud de la serie devuelta es la misma que la serie de entrada y cada elemento es igual al producto de los valores actuales y todos los anteriores.

Sintaxis: Series.cumprod(axis=Ninguno, skipna=Verdadero)

Parámetros:
eje: 0 o ‘índice’ para la operación por filas y 1 o ‘columnas’ para la operación por columnas
skipna: Omite la adición de NaN para elementos después del siguiente si es Verdadero.

Tipo de retorno: Serie

Ejemplo 1:

En este ejemplo, se crea una serie a partir de una lista de Python. La lista también contiene un valor Nulo y el skipna parámetro se mantiene predeterminado, es decir, Verdadero.

# importing pandas module 
import pandas as pd 
    
# importing numpy module 
import numpy as np 
    
# making list of values 
values = [2, 10, np.nan, 4, 3, 0, 1] 
    
# making series from list 
series = pd.Series(values) 
    
# calling method 
cumprod = series.cumprod() 
    
# display 
cumprod

Producción:

0      2.0
1     20.0
2      NaN
3     80.0
4    240.0
5      0.0
6      0.0
dtype: float64

Explicación: Cumprod es la multiplicación de los valores actuales y todos los anteriores. Por lo tanto, el primer elemento siempre es igual al primero de la serie de llamadas.

2
20 (2 x 10)
NaN (20 x NaN = NaN, Anything multiplied with NaN returns NaN)
80 (20 x 4)
240 (80 x 3)
0 (240 x 0)
0 (0 x 1)

 
Ejemplo #2: Mantener skipna=False

En este ejemplo, se crea una serie como en el ejemplo anterior. Pero el skipna parámetro se mantiene falso. Por lo tanto, los valores NULL no se ignorarán y se compararán cada vez que ocurran.

# importing pandas module 
import pandas as pd 
    
# importing numpy module 
import numpy as np 
    
# making list of values 
values = [9, 4, 33, np.nan, 0, 1, 76, 5] 
    
# making series from list 
series = pd.Series(values) 
    
# calling method 
cumprod = series.cumprod(skipna = False) 
    
# display 
cumprod 

Producción:

0       9.0
1      36.0
2    1188.0
3       NaN
4       NaN
5       NaN
6       NaN
7       NaN
dtype: float64

Explicación: Al igual que en el ejemplo anterior, el producto de los valores actuales y todos los anteriores se devolvió en cada posición. Dado que NaN multiplicado por cualquier cosa también es NaN, y el parámetro skipna se mantuvo falso, por lo tanto, todos los valores después de la aparición de NaN también son NaN.

Publicación traducida automáticamente

Artículo escrito por Kartikaybhutani y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *