【Python科学计算】Numpy——ndarry

本篇主要用于自己学习Python科学计算的学习笔记,便于之后细节不清时的查阅。

主要参考内容:莫烦的Python——Numpy&Pandas教程

       《Python科学计算》张若愚著,清华大学出版社

 

numpy的使用会使很多计算更快,因为Numpy是基于C语言编写的,可以提高计算速度

 1 import numpy as np
 2 
 3 array = np.array([[1,2,3],
 4                  [2,3,4]])
 5 #将列表 [[1, 2, 3], [2 ,3 ,4]] 输出型为2行3列的矩阵
 6 print(array)
 7 print("number of dim:",array.ndim)  #输出矩阵的维度
 8 print("shape",array.shape)          #输出矩阵的形状
 9 print("size",array.size)            #输出矩阵的大小(2*3)
10 
11 b = np.array([1,2,3,4])
12 print(b)
13 print(b.shape)
View Code

可以通过修改数组的shape属性,在保持数组元素个数不变的情况下,改变数组每个轴的长度。

1 import numpy as np
2 
3 array = np.array([[1,2,3],
4                  [2,3,4]])
5 array.shape = 3,2
6 print(array)
View Code

当设置某个轴的元素为-1时,将自动计算此轴的长度

1 import numpy as np
2 
3 array = np.array([[1,2,3],
4                  [2,3,4],
5                   [3,4,5],
6                   [4,5,6]])
7 array.shape = 3,-1
8 print(array)
View Code

 

接下来就是矩阵的建立

1 a = np.array([2, 3, 4])
2 print(a)
3 #可以看到和列表相差不大,但是没有逗号
4 print(a.dtype)
5 a = np.array([2, 3, 4],dtype=np.int64)
6 print(a.dtype)
7 a = np.array([2, 3, 4],dtype=np.float64)
8 print(a.dtype)
View Code

在创建的过程中也可以对其中数值类型进行定义。Numpy的数值对象的运算速度比Python内置类型的运算速度要慢,若大量使用,应尽量避免。

对数组的元素类型进行转换。

1 import numpy as np
2 
3 t1 = np.array([1,2,3,4],dtype = np.float)
4 t2 = np.array([1,2,3,4],dtype = np.complex)
5 t3 = t1.astype(np.int32)
6 t4 = t2.astype(np.complex64)
View Code

建立零矩阵、一矩阵、空矩阵

1 import numpy as np
2 
3 a = np.zeros( (3,4) )
4 #a = np.zeros( (3,4) ,dtype=np.float)
5 #a = np.ones( (3,4) )
6 #a = np.empty( (3,4))
7 #a = np.empty( (3,4) , dtype = np.int)
8 print(a)
View Code

使用full()对数组元素进行指定值的初始化

1 import numpy as np
2 
3 a = np.full(4, np.pi)
4 print(a)
View Code

此外,zeros_like()、ones_like()、empty_like()等函数创建与参数数组形状相同和类型相同的数值,因此与zeros_like(a)和zeros(a.shape,a.dtype)效果相同

 

猜你喜欢

转载自www.cnblogs.com/SoulSecret/p/11788064.html