Як розрахувати відсоток зміни панд
Ви можете використовувати функцію pct_change() , щоб обчислити відсоткову зміну між значеннями в pandas:
#calculate percent change between values in pandas Series s. pct_change () #calculate percent change between rows in pandas DataFrame df[' column_name ']. pct_change ()
Наступні приклади показують, як використовувати цю функцію на практиці.
Приклад 1: Відсоткова зміна серії панд
Наступний код показує, як обчислити відсоткову зміну між значеннями в серії pandas:
import pandas as pd #create pandas Series s = pd. Series ([6, 14, 12, 18, 19]) #calculate percent change between consecutive values s. pct_change () 0 NaN 1 1.333333 2 -0.142857 3 0.500000 4 0.055556 dtype:float64
Ось як були розраховані ці значення:
- Індекс 1: (14 – 6) / 6 = 1,333333
- Індекс 2: (12 – 14) / 14 = – ,142857
- Індекс 3: (18 – 12) / 12 = 0,5
- Індекс 4: (19 – 18) / 18 = 0,055556
Зауважте, що ви також можете використовувати аргумент періодів , щоб обчислити відсоткову зміну між значеннями на різних інтервалах:
import pandas as pd #create pandas Series s = pd. Series ([6, 14, 12, 18, 19]) #calculate percent change between values 2 positions apart s. pct_change (periods= 2 ) 0 NaN 1 NaN 2 1.000000 3 0.285714 4 0.583333 dtype:float64
Ось як були розраховані ці значення:
- Індекс 2: (12 – 6) / 6 = 1,000000
- Індекс 3: (18 – 14) / 14 = 0,285714
- Індекс 4: (19 – 12) / 12 = 0,583333
Приклад 2: Відсоткова зміна в pandas DataFrame
Наступний код показує, як обчислити відсоткову зміну між послідовними рядками в pandas DataFrame:
import pandas as pd #createDataFrame df = pd. DataFrame ({' period ': [1, 2, 3, 4, 5], ' sales ': [6, 7, 7, 9, 12]}) #view DataFrame df period sales 0 1 6 1 2 7 2 3 7 3 4 9 4 5 12 #calculate percent change between consecutive values in 'sales' column df[' sales_pct_change '] = df[' sales ']. pct_change () #view updated DataFrame df period sales sales_pct_change 0 1 6 NaN 1 2 7 0.166667 2 3 7 0.000000 3 4 9 0.285714 4 5 12 0.333333
Ось як були розраховані ці значення:
- Індекс 1: (7 – 6) / 6 = 0,166667
- Індекс 2: (7 – 7) / 7 = 0,000000
- Індекс 3: (9 – 7) / 7 = 0,285714
- Індекс 4: (12 – 9) / 9 = 0,333333
Ви можете знайти повну документацію функції pct_change() тут .
Додаткові ресурси
Як обчислити середнє значення стовпців у Pandas
Як обчислити медіану в пандах
Як обчислити ковзне середнє в Pandas
Як розрахувати ковзну кореляцію в пандах