Porcentaje acumulado de una columna en Pandas – Python

El porcentaje acumulativo se calcula mediante la fórmula matemática de dividir la suma acumulativa de la columna por la suma matemática de todos los valores y luego multiplicar el resultado por 100. Esto también es aplicable en los marcos de datos de Pandas.
Aquí, las funciones predefinidas cumsum() y sum() se utilizan para calcular la suma acumulada y la suma de todos los valores de una columna.
Sintaxis: 

df[cum_percent] = 100 * (df[‘column_name’].cumsum()/df[‘column_name’].sum()) 
 

Ejemplo 1:

Python3

import pandas as pd
import numpy as np
  
# Create a DataFrame
df1 = {
     'Name':['abc','bcd','cde','def','efg','fgh','ghi'],
   'Math_score':[52,87,49,74,28,59,48]}
  
df1 = pd.DataFrame(df1, columns=['Name','Math_score'])
 
# Computing Cumulative Percentage
df1['cum_percent'] = 100*(df1.Math_score.cumsum() / df1.Math_score.sum())
 
df1

Producción: 
 

Ejemplo 2: 

Python3

import pandas as pd
import numpy as np
  
# Create a DataFrame
df1 = {
     'Name':['abc','bcd','cde','def','efg','fgh','ghi'],
   'Math_score':[52,87,49,74,28,59,48],
  'Eng_score':[34,67,25,89,92,45,86]
}
  
df1 = pd.DataFrame(df1,columns=['Name','Math_score','Eng_score'])
 
# Computing cumulative Percentage
df1['Eng_cum_percent'] = (df1.Eng_score.cumsum() / df1.Eng_score.sum()) * 100
 
df1

Producción: 
 

Publicación traducida automáticamente

Artículo escrito por nidhi_biet 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 *