在Numpy(或Scipy)中计算斜率

16 浏览
0 Comments

在Numpy(或Scipy)中计算斜率

我正在尝试使用Numpy和Scipy找到计算斜率的最快和最有效的方法。我有一个包含三个Y变量和一个X变量的数据集,我需要计算它们各自的斜率。例如,我可以像下面一行一行地计算,但我希望有一种更高效的方法来做到这一点。我也不认为linregress是最好的选择,因为我在结果中不需要任何辅助变量,如截距、标准误差等。非常感谢任何帮助。

导入NumPy和SciPy库

Y = [[2.62710000e+11 3.14454000e+11 3.63609000e+11 4.03196000e+11

4.21725000e+11 2.86698000e+11 3.32909000e+11 4.01480000e+11

4.21215000e+11 4.81202000e+11]

[3.11612352e+03 3.65968334e+03 4.15442691e+03 4.52470938e+03

4.65011423e+03 3.10707392e+03 3.54692896e+03 4.20656404e+03

4.34233412e+03 4.88462501e+03]

[2.21536396e+01 2.59098311e+01 2.97401268e+01 3.04784552e+01

3.13667639e+01 2.76377113e+01 3.27846013e+01 3.73223417e+01

3.51249997e+01 4.42563658e+01]]

X = [1990. 1991. 1992. 1993. 1994. 1995. 1996. 1997. 1998. 1999.]

斜率_0,截距,相关系数,p值,标准误差 = stats.linregress(X,Y [0,:])

斜率_1,截距,相关系数,p值,标准误差 = stats.linregress(X,Y [1,:])

斜率_2,截距,相关系数,p值,标准误差 = stats.linregress(X,Y [2,:])

斜率_0 = 斜率/Y [0,:] [0]

斜率_1 = 斜率/Y [1,:] [0]

斜率_2 = 斜率/Y [2,:] [0]

b,a = polyfit(X,Y [1,:],1)

斜率_1_ a = b/Y [1,:] [0]

0