numpy --- 数组生成函数

注意:以下所有实例需要事先引入numpy

import numpy as np
  • random.randn 函数

作用:生成一个指定行列数的随机数组

例:生成一个2行3列的随机数组

data=np.random.randn(2,3) # 生成2行3列随机数组
print(data)

结果

[[ 0.40444093 -0.06987251  0.00759544]
 [ 1.22969751  0.39730171  1.42576693]]
  • shape函数

作用: 查看数组形状

例:查看data数组的形状

print(data.shape) # 查看数组的形状

结果

(2, 3)
  • dtype函数

作用:查看数组的数据类型

例:查看data数组的形状

print(data.dtype)

结果

float64
  • array( ) 函数

作用1:将列表转换为数组

例1:将data1转换为数组

data1=[1,2,3,4,5,6] # 将列表转换为数组类型
arr1=np.array(data1)
print(arr1)
print(type(arr1))
print(arr1.dtype)

结果:

[1 2 3 4 5 6]
<class 'numpy.ndarray'>
int32

作用2:嵌套序列,例如同等长度的列表,将会自动转换成多维数组

例2:将两个列表转换为数组

data2=[1,2,3,4,5],[6,7,8,9,10] # 嵌套序列,例如同等长度的列表,将会自动转换成多维数组:
arr2=np.array(data2)
print(arr2)
print(type(arr2))
print(arr2.ndim) # 显示数组的维数
print(arr2.shape) # 显示数组的形状

结果

[[ 1  2  3  4  5]
 [ 6  7  8  9 10]]
<class 'numpy.ndarray'>
2
(2, 5)
  • zeros函数

作用:创建一个全零的数组

例1:创建一个1行10列的全0数组

arr3=np.zeros(10) # 创建一个全0的一维数组
print(arr3)

结果

[0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]

例2:创建一个5行10列的全零数组

arr4=np.zeros((5,10)) # 创建一个5行10列的全零数组
print(arr4)

结果:

[[0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
 [0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
 [0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
 [0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
 [0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]]

  • ones 函数

作用:创建一个全1数组

例:创建一个5行10列的全1数组

arr5=np.ones((5,10)) # 创建一个5行10列的全一数组
print(arr5)

结果

[[1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]
 [1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]
 [1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]
 [1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]
 [1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]]
  • empty 函数

作用:创建空数组

注意:这个函数只是用于创造一个给定形状、但未初始化实体的数组,空在其值,而非其型。

例:创建一个2维3行2列的空数组

arr6=np.empty((2,3,2)) # 创建一个二维三行两列的空数组
print(arr6)

结果

[[[6.23042070e-307 1.42417221e-306]
  [1.37961641e-306 1.33508845e-306]
  [1.33511969e-306 1.24610383e-306]]
 [[1.69118108e-306 8.06632139e-308]
  [1.20160711e-306 1.69119330e-306]
  [1.29062229e-306 8.45590539e-307]]]
  • arange 函数

作用:根据给的范围创建一维数组

例:创建一个取值为0到14的数组

arr7=np.arange(15)  # 创建一个值为0-14的一维数组
print(arr7)

结果

[ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14]
  • zero_like、ones_like、empty_like 函数

作用:创建一个和指定的数组一样结构的全0、全1、空数组

例1:创建一个和arr6相同结构的全0数组

arr8=np.zeros_like(arr6) # 创建一个和指定数组一样结构的全零数组
print(arr8)

结果

[[[0. 0.]
  [0. 0.]
  [0. 0.]]
 [[0. 0.]
  [0. 0.]
  [0. 0.]]]

例2:创建一个与arr8结构相同的全1数组

arr9=np.ones_like(arr8) # 创建一个和指定数组一样结构的全零数组
print(arr9)

结果

[[[1. 1.]
  [1. 1.]
  [1. 1.]]
 [[1. 1.]
  [1. 1.]
  [1. 1.]]]

例3:创建一个与arr9结构相同的空数组

arr10=np.empty_like(arr9) # 创建一个和指定数组一样结构的空数组
print(arr10)

结果

[[[1.60218763e-306 9.79107872e-307]
  [9.79086142e-307 9.34598246e-307]
  [1.69119330e-306 1.42419802e-306]]
 [[9.34611827e-307 1.05699327e-307]
  [8.01093135e-307 2.33638357e-307]
  [1.24610994e-306 0.00000000e+000]]]
  • full函数

作用:根据指定形状和数据生成指定数据的数组

例:生成一个3维2行2列值全都为10的数组

arr11=np.full((3,2,2),10)
print(arr11)
print(arr11.ndim)

结果

[[[10 10]
  [10 10]]
 [[10 10]
  [10 10]]
 [[10 10]
  [10 10]]]
3
  • full_like函数

作用:根据所给数组生成一个形状一样,数据指定的数组

例:生成一个与arr11形状一样,值全都是20的数组

arr12=np.full_like((arr11),20) # 根据所给数组生成一个形状一样,数据指定的数组
print(arr12)

结果

[[[20 20]
  [20 20]]
 [[20 20]
  [20 20]]
 [[20 20]
  [20 20]]]

  • eye 函数

作用:生成一个n*n的特征矩阵

例:生成一个3行4列的特征矩阵

arr13=np.eye(3,4) # 生成一个n*n的特征矩阵
print(arr13)

结果

[[1. 0. 0. 0.]
 [0. 1. 0. 0.]
 [0. 0. 1. 0.]]
  • identity 函数

作用:生成一个特征行列式

例:生成一个行列数为3的特征行列式

arr14=np.identity(3) # 生成一个3行3列的行列式
print("**************")
print(arr14)

结果

[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]

注意:以上函数可以根据需要结合在一起使用

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值