Python Pandas中某一列的累积百分比

Python Pandas中某一列的累积百分比

累计百分比是通过数学公式计算的,即用列的累计总和除以所有数值的数学总和,然后将结果乘以100。这也适用于Pandas数据框架。
这里,预定义的cumsum()和sum()函数被用来计算一列所有数值的累积和和。
语法:

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

示例 1:

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

输出:

Pandas中某一列的累积百分比 - Python

示例 2:

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

输出:

Pandas中某一列的累积百分比 - Python

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程