是否有Python 2.7的统计模块?

oak*_*114 0 python numpy

Python 2.7中是否有统计模块(例如,用于人口标准偏差)?

我找到了Python3的这个链接,并发现使用它非常有用....

https://docs.python.org/3/library/statistics.html

我确实找到了可以产生标准偏差的scipy和numpy stats模块,但这总是在数组的轴上.我想要的是能够计算标准偏差,例如,通过传递数字而不必依靠自己来输入正确的数学方程式.

所以例如,在python 3中看起来我可以这样做:

 pstdev([1.5, 2.5, 2.5, 2.75, 3.25, 4.75]) 
 0.986893273527251
Run Code Online (Sandbox Code Playgroud)

好的,所以我意识到你可以比我想象的更多.例如,使用a数组,我可以这样做:

numpy.std(a[0,1:9])
Run Code Online (Sandbox Code Playgroud)

但是,我想要做的是将numpy数组中的不同部分作为输入(不只是一个切片).

因此,例如,在第0行,我想取数字1到8,在第2行,我想要数字1:3.所以我想知道如何从不同的位置获取这些不同的切片然后放入函数中.我可以以某种方式将两个或多个切片组合成一个表达式,并将其用作numpy.std函数所需的类数组输入吗?

dka*_*ins 6

不是内置的,但NumPy非常受欢迎.

这是stddev的可用内容:

使用示例:

>>> import numpy
>>> a=numpy.array([1.5, 2.5, 2.5, 2.75, 3.25, 4.75])
>>> numpy.std(a)
0.98689327352725098
Run Code Online (Sandbox Code Playgroud)

后续问题仍然不是很清楚,但这是你在寻找什么?

>>> b=numpy.array([[1.5, 2.5, 2.5, 2.75, 3.25, 4.75], [10,20,30,40,50,60]])
>>> b
array([[  1.5 ,   2.5 ,   2.5 ,   2.75,   3.25,   4.75],
       [ 10.  ,  20.  ,  30.  ,  40.  ,  50.  ,  60.  ]])
>>> c = b[0][:4]
>>> c
array([ 1.5 ,  2.5 ,  2.5 ,  2.75])
>>> d = b[1][2:5]
>>> d
array([ 30.,  40.,  50.])
>>> e = numpy.append(c, d)
>>> e
array([  1.5 ,   2.5 ,   2.5 ,   2.75,  30.  ,  40.  ,  50.  ])
>>> numpy.std(e)
19.404725387052988
Run Code Online (Sandbox Code Playgroud)