如何初始化数组,python 二维数组初始化

  如何初始化数组,python 二维数组初始化

  因为绘图中X轴和Y轴的数据通常是数组格式,先总结一下如何初始化数组:

  (1)list得到数组

  #通过数组函数传递列表对象

  L=[1,2,3,4,5,6]

  A=np.array(L)#如果传递一个多级嵌套列表,将创建一个多维数组。

  B=np.array ([[1,2,3,4],[5,6,7,8],[9,10,11,12]]) #可以通过dtype参数在创建时指定元素类型。

  d=np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]],dtype=np.float)

  #如果更改元素类型,可以使用类型安全转换。

  f=d . as type(NP . int)(2)使用arange

  #类似于Python的范围,arange也不包括最终值;但是,arange可以生成浮点类型,而range只能是整数类型。

  #1是起始值,10是结束值(不包括),0.5是步长。

  A=np.arange(1,10,0.5)相关推荐:《Python基础教程》

  (3)使用ones、zeros、empty

  #np.ones(shape,dtype),它生成一个包含所有1个元素的数组(默认浮点类型)

  #shape可以获取一个整数的一维数组,或者(integer 1,integer 2)格式的二维数组。类似地,可以获得多维数组。

  a=np.ones((3,3),dtype=np.int32)

  打印( a:\n ,a)

  #np.zeros(shape,dtype),它生成一个包含所有0元素的数组(默认浮点类型)

  #用法与np.noes()相同

  b=np.zeros((3,3),dtype=np.int32)

  打印( b:\n ,b)

  #np.empty(shape,dtype),生成一个包含随机数的数组(默认浮点类型)

  #用法与np.ones()相同

  c=np.empty((3,4),dtype=np.int32)

  打印( c:\n ,c)

  #np.ones()、np.zeros()和np.empty()都有以下形式复制结构相同的数组,但是数据类型可以选择。

  np.ones_like(array,dtype=)

  np.zeros_like(array,dtype=)

  np.empty_like(数组,类型=)(4)等差数列

  #linspace函数通过指定起始值、结束值和元素个数创建一个算术数组,元素的步长相等。

  #endpoint指示是否包括终止值,默认情况下为真。

  b=np.linspace(1,10,10,endpoint=True)(5)等比数列

  #指定起始值、终止值、元素数和基数,以创建几何级数。

  #base表示基数,下面的公式用1到4之间的10个数字创建一个几何级数。

  (同down)向下的

  bsp;=np.logspace(1,2,10,endpoint=True,base=2)

  #基数为10,下式创建了一个10到100之间的有10个数的等比数列

  d=np.logspace(1,2,10,endpoint=True,base=10)(6)随机数

  rand()

  

#返回一个服从“0~1”均匀分布的随机数,该随机数在[0,1)内,也可以返回一个由服从“0~1”均匀分布的随机数组成的数组。

  #np.random.rand(d0,d1,…,dn)

  #返回一个随机值,随机值在[0,1)内

  In[15]:np.random.rand()

  Out[15]:0.9027797355532956

  #返回一个3x3的数组,数组元素在[0,1)内

  In[16]:np.random.rand(3,3)

  Out[16]:

  array([[0.47507608,0.64225621,0.9926529],

  [0.95028412,0.18413813,0.91879723],

  [0.89995217,0.42356103,0.81312942]])

  In[17]:np.random.rand(3,3,3)

  

  #返回一个3x3x3的数组

  Out[17]:

  array([[[0.30295904,0.76346848,0.33125168],

  [0.77845927,0.75020602,0.84670385],

  [0.2329741,0.65962263,0.93239286]],

  [[0.24575304,0.9019242,0.62390674],

  [0.43663215,0.93187574,0.75302239],

  [0.62658734,0.01582182,0.66478944]],

  [[0.22152418,0.51664503,0.41196781],

  [0.47723318,0.19248885,0.29699868],

  [0.11664651,0.66718804,0.39836448]]])

randn()

  

#产生标准正态分布随机数或随机数组,用法与rand(d0,d1,…,dn)方法一样

  np.random.randn(d0,d1,…,dn)

randint()

  

#可以生成随机数,也可以生成多维随机数组

  #np.random.randint(low,high=None,size=None,dtype=)

  #[0,4)之间的随机数

  In[7]:np.random.randint(4)

  Out[7]:1

  #[0,4)之间的一维数组

  In[8]:np.random.randint(4,size=4)

  Out[8]:array([2,2,2,0])

  #[4,10)之间的一维数组

  In[9]:np.random.randint(4,10,size=6)

  Out[9]:array([7,9,7,8,6,9])

  #[4,10)之间的2x2数组

  np.random.randint(4,10,size=(2,2),dtype='int32')

  Out[10]:

  array([[7,4],[6,9]])

uniform()

  

#产生[low,high)之间的均匀分布随机数或随机数组,low默认为0.0,high默认为1.0

  np.random.uniform(low=0.0,high=1.0,size=None)

normal()

  

#产生均值为loc,方差为scale的服从正太分布的随机数或随机数组,loc默认为0,scale默认为1

  np.random.normal(loc=0.0,scale=1.0,size=None)

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: