一、简单创建数组
首先我们导入numpy给它起个别名np
import numpy as np
1.创建一维数组
n1=np.array([1,2,3])
这样我们就创建了一个一维数组n1
2.创建二维数组:
n2=np.array([[1,2],[3,4]])
这样我们就创建了一个二维数组n2
3.我们可以使用ndmin设置我们创建的数组是几维数组
n3=np.array([1,2,3],ndmin=3)
这里我们设置了ndmin为3,所以我们创建了一个三维数组n3
4.在里面我们还可以在创建数组时设置它的类型,使用dtype
n4=np.array([1,2,3],dtype=float)
这样数组里面的值就是我们指定的类型
二、数组复制
首先我们创建一个数组
n5=np.array([1,2,3])
通过复制数组创建新数组
n6=np.array(n5,copy=True)
这样我们就通过复制数组n5创建了数组n6,他们维数一样,值一样,类型一样,但是他们不相干扰,都是独立的个体
三、不同方式创建数组
empty()
创建一个 指定维度和数据类型未初始化的数组
n7=np.empty([5,4],dtype=int)
#[5,4]表示五行四列
#创建一个五行四列的数组,类型为int
zeros()
创建一个指定维度,以0填充的数组
n8=np.zeros(3)
#创建一个一维数组,输出结果默认是浮点类
ones()
创建一个指定维度,以1填充的数组
n9=np.ones(3)
#创建一个以1填充的一维数组
full()
创建一个指定数组,以指定的数值填充的数组
n=np.full((3,4),)
创建一个三行四列以8填充的数组,注意这里的是小括号不是中括号
三、从数值范围创建数组
1. 通过数值范围创建数组
写法:arange(起始,结束,步长,dtype=none)
n=np.arange(1,11,2)
#创建一个从1开始到11结束,步长为2的数组(不包含11)
2.通过linspace函数创建等差数列
写法:linspace(起始,结束,生成的数量,endpoint=True retstep=False)
endpoint:默认True,表示是否包含中间值
n=np.linspace(200,300,5)
#生成一个从200开始,到300结束的等差数列,数量为五个值。(包含300)
3.通过logspace函数创建等比数列
写法logspace(起始,结束,生成的数量,endooint=True,base=2,dtype=int)
base为对数log的底数
n=np.logspace(0,50,20,base=2,dtype=int)
生成一个从0开始到50,一共20个值的等比数列
(建议自己去尝试后理解如何意思)
四、生成随机数组
np.random.rand:生成0到1之间的随机数组,包含0不包含1
n=np.random.rand(5)
#生成一个一列数组,数组内有五个值
####################
n1=np.ramdom.rand(2,4)
#生成一个2行4列的二维数组
.np.random.randn:随机生成满足正态分布的数组
n=np.random.randn(3)
生成一个含有三个元素的一维数组
n1=np.random.randn(3,4)
#生成一个3行4列的二维数组
np.random.randint:生成一定范围的随机数组,包含头不包含尾
n=np.random.randint(1,4,10)
#生成一个一维数组,数值大小在1到4之间,有10个数值
n1=np.random.randint(1,4.size=(2,3))
#生成一个2行3列的二维数组
.np.random.normal:生成正态分布的随机数组
n=np.ramdom.normal(0,0.2,20)
#0表示以y轴为对称轴,
#0.2表示标准差,越大就越矮胖,越小越瘦高
#20表示产生20个
#生成一个一维数组
n1=np.ramdom.normal(0,0.2,size=(2,3))
#生成一个2行3列的二维数组
五、从已有的数组中生成数组
1.asarry(列表(元组),dtype=none)
n=np.asarry([1,2,3])
#通过列表创建数组
n=np.asarry([(1,2,3),(4,5,6)])
#创建二维数组
2.动态数组
frombuffer()
n=np.frombuffer(b'abasb',dtype='S1')
#b'abasb'为二进制形式
#S1表示单个字符串为一个字符
3.从迭代对象中建立数组对象
fromiter()
#可迭代对象
w=(i for i in range(6))
##################
n=np.fromiter(w,dtype='int')
#创建一个数组
(建业自己去尝试)
4.empty_like函数
n=np.empty_like([[1,2],[3,4]])
#生成一个像给定的数组一样的数组,给的参数像是一个模板
5.zeros_like函数
n=np.zeros_like([[1,2],[3,4]])
#生成一个以0填充的像给的参数形式的数组
6.ones_like函数
n=np.ones_like([[1,2],[3,4]])
#生成一个以1填充的像给的参数形式的数组
7.full_like 函数
n=np.full_like([[1,2],[3,4]],3)
#生成一个用给定值填充的像给定参数一样的数组
#3为给定的值
可能表达的不清楚,请见谅