如何计算熊猫的百分比变化
您可以使用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 系列的百分比变化
以下代码展示了如何计算 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
请注意,您还可以使用period参数来计算不同时间间隔的值之间的百分比变化:
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 = .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 = .166667
- 索引 2:(7 – 7) / 7 = 0.000000
- 索引 3:(9 – 7) / 7 = .285714
- 索引 4:(12 – 9) / 9 = .333333
您可以在此处找到pct_change()函数的完整文档。
其他资源
如何计算 Pandas 中列的平均值
如何计算 pandas 的中位数
如何计算 Pandas 的移动平均线
如何计算pandas中的滑动相关性