Python-numpy
参考文献
numpy
- 在
NumPy
里有两个重要的对象:ndarray(N-dimensional array object)
解决了多维数组问题ufunc(universal function object)
则是解决对数组进行处理的函数
NumPy
的数组类被调用ndarray
.它也被别名所知array
.请注意,numpy.array
这与标准Python库类不同array.array
,后者只处理一维数组并提供较少的功能.ndarray
对象更重要的属性是:ndarray.ndim
- 数组的轴(维度)的个数.在Python
世界中,维度的数量被称为rank
.ndarray.shape
- 数组的维度.这是一个整数的元组,表示每个维度中数组的大小.对于有n
行和m
列的矩阵,shape
将是(n,m)
.因此,shape
元组的长度就是rank
或维度的个数ndim
.ndarray.size
- 数组元素的总数.这等于shape
的元素的乘积.ndarray.dtype
- 一个描述数组中元素类型的对象.可以使用标准的Python
类型创建或指定dtype
.另外NumPy提供它自己的类型.例如numpy.int32、numpy.int16
和numpy.float64
.ndarray.itemsize
- 数组中每个元素的字节大小.例如,元素为float64
类型的数组的itemsize
为8(=64/8),而complex32
类型的数组的itemsize
为4(=32/8).它等于ndarray.dtype.itemsize
.ndarray.data
- 该缓冲区包含数组的实际元素.通常,我们不需要使用此属性,因为我们将使用索引访问数组中的元素.
创建数组
1 | import numpy as np |
-
一个常见的错误,就是调用
array
的时候传入多个数字参数,而不是提供单个数字的列表类型作为参数。1
21,2,3,4) # WRONG a = np.array(
1,2,3,4]) # RIGHT a = np.array([
算术运算
1 | import numpy as np |
统计函数
计数组 / 矩阵中的最大值函数amax()
,最小值函数amin()
1 | import numpy as np |
统计最大值与最小值之差ptp()
1 | import numpy as np |
统计数组的百分位数percentile()
1 | import numpy as np |
percentile()
代表着第 p 个百分位数,这里 p 的取值范围是 0-100,如果 p=0,那么就是求最小值,如果 p=50 就是求平均值,如果 p=100 就是求最大值
统计数组中的中位数median()
、平均数mean()
1 | import numpy as np |
统计数组中的加权平均值average()
1 | import numpy as np |
统计数组中的标准差 std()
、方差 var()
1 | import numpy as np |
- 方差的计算是指每个数值与平均值之差的平方求和的平均值,即
mean((x - x.mean())** 2)
. - 标准差是方差的算术平方根.在数学意义上,代表的是一组数据离平均值的分散程度.
排序
sort(a, axis=-1, kind=‘quicksort’, order=None)
,默认情况下使用的是快速排序;在 kind 里,可以指定quicksort、mergesort、heapsort
分别表示快速排序、合并排序、堆排序.同样 axis 默认是 -1,即沿着数组的最后一个轴进行排序,也可以取不同的 axis 轴,或者axis=None
代表采用扁平化的方式作为一个向量进行排序.另外order 字段,对于结构化的数组可以指定按照某个字段进行排序.
1 | import numpy as np |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 HoleLin's Blog!