机器学习---数据科学包numpy-1
numpy的简介
NumPy(Numerical Python)是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix)),支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。
numpy和python
- Python中使用列表来保存一组值,可将列表当成数组来用。
- Python有array模块,但不支持多维数组、也没有科学运算函数。
- numpy提供了ndarray数组对象,功能十分强大,拥有丰富的数组计算函数。
numpy的属性
1 numpy的导入
编辑器用的:IDLE,需新建
用import导入numpy,一般给其命名为np
import numpy as np
2 numpy的属性
常用属性:
array· shape: 代表一个 array 的形态,是一个向量还是一个矩阵,抑或是一个更复杂的向量组。
array· ndim: 代表这个 array 的维度
array· size: 在 array 中拥有的元素数量
array· itemsize: 这个 array 中每一个元素所需要占的字节数
array· nbytes: 这个 array 的总字节数(=itemsize*size)
array· real: 代表一个 array 中所有元素的实数部分
array· imag: 同理,代表一个 array 中所有元素的虚数部分
array· flat: 将这个 array 整理成一维的,可以索引的一系列的元素组合。它实际上是通过 iterator 实现的,我们可以通过 for x in array.flat 来取得到所有的元素
array· T: 矩阵转置,同 transpose()方法
示例:
import numpy as np
x=np.array([[1.0,0.0,0.0],[0.,1.,2.]]) #定义了一个二维数组,大小为(2,3)
print(x.ndim) #数组维度数
print(x.shape) #数组的维数,返回的格式(n,m),其中n为行数,m为列数
print(x.size) #数组元素的总数
print(x.dtype) #数组元素类型,dtype: 数组元素的类型 float32,uint8,int32
print(x.itemsize) #每个元素占有的字节大小
print(x.data) #数组元素的缓冲区
执行结果:其他的用到再百度
2
(2, 3)
6
float64
8
<memory at 0x0000029974C3B480>
numpy的创建
1 第一种数组的创建
x=np.ary=np.array([1.5,0.7,0.9])#定义了一个一维数组
y=np.ary=np.array([[1.5,0.7,0.9],[0.7,1.,2.]],dtype =np.int) #定义了一个二维数组,大小为(2,3)
print(x)
print(y)
执行结果:因为二维定义了类型为int,所以向下取整
[1.5 0.7 0.9]