팬더에서 누적 백분율을 계산하는 방법
다음 기본 구문을 사용하여 Pandas DataFrame 열에 있는 값의 누적 백분율을 계산할 수 있습니다.
#calculate cumulative sum of column df[' cum_sum '] = df[' col1 ']. cumsum () #calculate cumulative percentage of column (rounded to 2 decimal places) df[' cum_percent '] = round( 100 *df. cum_sum /df[' col1 ']. sum (), 2 )
다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.
예: 팬더 간의 누적 백분율 계산
회사가 연속적으로 판매한 단위 수를 표시하는 다음과 같은 pandas DataFrame이 있다고 가정합니다.
import pandas as pd #createDataFrame df = pd. DataFrame ({' year ': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], ' units_sold ': [60, 75, 77, 87, 104, 134, 120, 125, 140, 150]}) #view DataFrame print (df) year units_sold 0 1 60 1 2 75 2 3 77 3 4 87 4 5 104 5 6 134 6 7 120 7 8 125 8 9 140 9 10 150
다음으로, 다음 코드를 사용하여 누적 판매 단위 수와 판매 단위의 누적 백분율을 표시하는 열을 추가할 수 있습니다.
#calculate cumulative sum of units sold
df[' cum_sum '] = df[' units_sold ']. cumsum ()
#calculate cumulative percentage of units sold
df[' cum_percent '] = round( 100 *df. cum_sum /df[' units_sold ']. sum (), 2 )
#view updated DataFrame
print (df)
year units_sold cum_sum cum_percent
0 1 60 60 5.60
1 2 75 135 12.59
2 3 77 212 19.78
3 4 87 299 27.89
4 5 104 403 37.59
5 6 134 537 50.09
6 7 120 657 61.29
7 8 125 782 72.95
8 9 140 922 86.01
9 10 150 1072 100.00
누적 백분율을 다음과 같이 해석합니다.
- 전체 매출의 5.60%가 첫 해에 이루어졌습니다.
- 전체 매출 중 12.59가 1년차와 2년차를 합하여 이루어졌습니다.
- 전체 매출의 19.78%가 1년차, 2년차, 3년차를 합하여 이루어졌습니다.
등등.
round() 함수의 값을 변경하면 표시되는 소수점 수도 변경할 수 있습니다.
예를 들어, 대신 누적 백분율을 소수점 이하 자릿수 0으로 반올림할 수 있습니다.
#calculate cumulative sum of units sold
df[' cum_sum '] = df[' units_sold ']. cumsum ()
#calculate cumulative percentage of units sold
df[' cum_percent '] = round( 100 *df. cum_sum /df[' units_sold ']. sum (), 0 )
#view updated DataFrame
print (df)
year units_sold cum_sum cum_percent
0 1 60 60 6.0
1 2 75 135 13.0
2 3 77 212 20.0
3 4 87 299 28.0
4 5 104 403 38.0
5 6 134 537 50.0
6 7 120 657 61.0
7 8 125 782 73.0
8 9 140 922 86.0
9 10 150 1072 100.0
이제 누적 백분율이 소수점 이하 0자리로 반올림됩니다.
추가 리소스
다음 튜토리얼에서는 Python에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.