Numpy学习总结(一):array的创建

array创建
方法 描述
array(p_object, dtype=None, copy=True, order='K', subok=False, ndmin=0)

定义一个数组或矩阵,

dtype指定数组中元素的类型

zeros((x,y)) 创建x行y列的全为0的矩阵
ones((x,y)) 创建x行y列的全为1的矩阵
eye(n)

创建n行n列的单位矩阵

empty((x,y)) 创建x行y列的空矩阵
arange(start,end,step) 创建一个范围在[start,end),步长为step(默认是1)的向量
random.random((x,y)) 创建x行y列范围在(0,1)之间的随机数矩阵
linespace(start,end,seg) 创建start到end,平均分为seg段的向量
reshape((x,y)) 对矩阵重构造为x行y列

示例:

代码:

import numpy as np

a = np.array([2,23,4],dtype=np.int)

print(a)

print(a.dtype)

结果:

[ 2 23 4]

int32

注:1.一般来说,位数越大,就需要更多的内存空间来存储,但保留的精度也相对精准。根据具体情况做取舍

2.int和float是常用的。其它数据格式自行百度

 

代码:

a1 = np.array([[2,23,4],

[2,32,4]])

print(a1)

注:定义矩阵:列表的嵌套

 

代码:

a2 = np.zeros((3,4))

print(a2)

结果:

[[0. 0. 0. 0.]

[0. 0. 0. 0.]

[0. 0. 0. 0.]]

注:生成一个3行4列全部为0的矩阵

 

代码:

a3 = np.ones((3,4),dtype=np.int16)

print(a3)

结果:

[[1 1 1 1]

[1 1 1 1]

[1 1 1 1]]

注:生成一个3行4列全部为1的矩阵

 

代码:

a4 = np.empty((3,4))

print(a4)

结果:

[[6.23042070e-307 1.89146896e-307 1.37961302e-306 1.05699242e-307]

[8.01097889e-307 1.78020169e-306 7.56601165e-307 1.02359984e-306]

[1.33510679e-306 2.22522597e-306 6.23053614e-307 9.34608432e-307]]

注:生成一个3行4列空矩阵,矩阵中的每个元素几乎接近于0

 

代码:

a5 = np.arange(10,20,2)

print(a5)

结果:

[10 12 14 16 18]

注:生成一个有序的矩阵:start-10,end-20,步长-2

 

代码:

a6 = np.arange(12).reshape((3,4))

print(a6)

结果:

[[ 0 1 2 3]

[ 4 5 6 7]

[ 8 9 10 11]]

注:生成一个元素为从0到11的3行4列的矩阵

 

代码:

a7 = np.linspace(1,10,5)

print(a7)

结果:

[ 1. 3.25  5.5  7.75  10. ]

注:生成一个1到10,分为5段的序列

 

代码:

a8_1 = np.linspace(1,10,5).reshape((2,3))

print(a8_1)

结果:

cannot reshape array of size 5 into shape (2,3)

注:也可以使用reshape来更改它的形状。注意:分段数 == reshape中定义的元素总个数。否则会报错

 

代码:

a8_2 = np.linspace(1,10,6).reshape((2,3))

print(a8_2)

结果:

[[ 1. 2.8 4.6]

[ 6.4 8.2 10. ]]

你可能感兴趣的:(numpy,python编程)