- 1. numpy中数组/矩阵的转置
- 1.1 交换轴的位置 t.swapaxes(axis1,axis0)
- 1.2 转置方法一 t.transpose()
- 1.3 转置方法二 t.T
- 2. numpy中数组/矩阵的索引和切片
- 2.1 取数组/矩阵中的一行/一列
- 2.2 连续取数组/矩阵中的多行/多列
- 2.3 取数组/矩阵中不连续的多行/多列
- 2.4 取单行、单列的交点
- 2.5 取多行、多列的交点
- 2.6 取不连续多行、多列的相交点
- 3. numpy中数组/矩阵中元素值的修改
- 3.1 修改数组/矩阵单个元素值、某行、某列的值
- 3.2 根据条件修改数组/矩阵中元素的值
- 3.2.1 一般条件
- 3.2.2 三元条件
- 3.3 数组/矩阵的布尔索引
- 3.4 numpy中的裁剪clip()
- 4. numpy中的nan和inf
- 4.1 概念
- 4.2 指定nan或者inf
- 4.3 numpy中nan的注意点
- 5. numpy中常用的统计函数
- 6.数组/矩阵的拼接、分割
- 6.1 数组/矩阵的拼接
- 6.1.1 竖直拼接
- 6.1.2 水平拼接
- 6.2 数组/矩阵的分割
- 6.2.1 水平分割hsplit()
- 6.2.2 垂直分割vsplit()
- 6.2.3 指定轴分割split()
- 6.2.4 深度分割dsplit()
- 7. 数组/矩阵行列交换
- 8. numpy其它实用方法
- 9. numpy 生成随机数
转置是数组/矩阵的一种变换,简单的说就是在数组/矩阵对角线方向交换数据。
1.1 交换轴的位置 t.swapaxes(axis1,axis0)import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) a1 = a.swapaxes(1, 0) print("转置后得到a1:n", a1) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] 转置后得到a1: [[ 1 7 13] [ 2 8 14] [ 3 9 15] [ 4 10 16] [ 5 11 17] [ 6 12 18]]1.2 转置方法一 t.transpose()
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) a2 = a.transpose() print("转置后得到a2:n", a2) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] 转置后得到a2: [[ 1 7 13] [ 2 8 14] [ 3 9 15] [ 4 10 16] [ 5 11 17] [ 6 12 18]]1.3 转置方法二 t.T
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) a3 = a.T print("转置后得到a3:n", a3) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] 转置后得到a3: [[ 1 7 13] [ 2 8 14] [ 3 9 15] [ 4 10 16] [ 5 11 17] [ 6 12 18]]2. numpy中数组/矩阵的索引和切片 2.1 取数组/矩阵中的一行/一列
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) #a1 = a[1,:] a1 = a[1] print("取一行得到的结果:n", a1) a2 = a[:, 1] print("取一列得到的结果:n", a2) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] 取一行得到的结果: [ 7 8 9 10 11 12] 取一列得到的结果: [ 2 8 14]2.2 连续取数组/矩阵中的多行/多列
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) #a1 = a[1:3,:] a1 = a[1:3] print("取多行得到的结果:n", a1) a2 = a[:, 1:3] print("取多列得到的结果:n", a2) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] 取一行得到的结果: [[ 7 8 9 10 11 12] [13 14 15 16 17 18]] 取一列得到的结果: [[ 2 3] [ 8 9] [14 15]]2.3 取数组/矩阵中不连续的多行/多列
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) # a1 = a[[0,2],:] a1 = a[[0, 2]] print("取不连续多行得到的结果:n", a1) a2 = a[:, [0, 2, 5]] print("取不连续多列得到的结果:n", a2) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] 取不连续多行得到的结果: [[ 1 2 3 4 5 6] [13 14 15 16 17 18]] 取不连续多列得到的结果: [[ 1 3 6] [ 7 9 12] [13 15 18]]2.4 取单行、单列的交点
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) a1 = a[1, 2] print("取不连续多行得到的结果:n", a1) print(type(a1)) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] 取不连续多行得到的结果: 92.5 取多行、多列的交点
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) a1 = a[0:2, 1:4] print("取连续多行、多列交叉区域得到的结果:n", a1) print(type(a1)) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] 取连续多行、多列交叉区域得到的结果: [[ 2 3 4] [ 8 9 10]]2.6 取不连续多行、多列的相交点
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) a1 = a[[0,2,1], [1,3,5]] print("取不连续多行、多列交叉点得到的结果:n", a1) print(type(a1)) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] 取不连续多行、多列交叉点得到的结果: [ 2 16 12]3. numpy中数组/矩阵中元素值的修改 3.1 修改数组/矩阵单个元素值、某行、某列的值
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) a[0, :] = 999999 print("修改第0行的值得到的结果:n", a) a[:, 0:2] = 0 print("修改第0列、第1列的值得到的结果:n", a) a[0,0]=6666666 print("修改单个元素的值得到的结果:n",a) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] 修改第0行的值得到的结果: [[999999 999999 999999 999999 999999 999999] [ 7 8 9 10 11 12] [ 13 14 15 16 17 18]] 修改第0列、第1列的值得到的结果: [[ 0 0 999999 999999 999999 999999] [ 0 0 9 10 11 12] [ 0 0 15 16 17 18]] 修改单个元素的值得到的结果: [[6666666 0 999999 999999 999999 999999] [ 0 0 9 10 11 12] [ 0 0 15 16 17 18]]3.2 根据条件修改数组/矩阵中元素的值 3.2.1 一般条件
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) a[a > 3] = 0 print("根据修改条件得到的结果:n", a) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] 根据修改条件得到的结果: [[1 2 3 0 0 0] [0 0 0 0 0 0] [0 0 0 0 0 0]]3.2.2 三元条件
a1 = np.where(条件,赋值1,赋值2) # 如果条件成立,符合条件 # 的元素赋值为“赋值1”,不 # 符合条件的赋值为“赋值2”
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) a1 = np.where(a < 7, 0, 7) print("根据三元修改条件得到的结果:n", a1) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] 根据三元修改条件得到的结果: [[0 0 0 0 0 0] [7 7 7 7 7 7] [7 7 7 7 7 7]]3.3 数组/矩阵的布尔索引
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) a1 = a < 9 print("a的布尔索引:n", a1) print(a1.dtype) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] a的布尔索引: [[ True True True True True True] [ True True False False False False] [False False False False False False]] bool3.4 numpy中的裁剪clip()
函数原型:
numpy.clip(a, a_min, a_max, out=None) # 此函数作用是将a中的元素的值限制在a_min 到 a_max之间,输出结果传给out
函数调用方法:
此函数的调用方法有多种
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("3行6列的矩阵为:n", a) # 将裁剪后的结果赋值给a1 a1 = a.clip(3, 9) print("a.clip(3, 9)的结果为:n",a1) # 将裁剪后的结果赋值给a2 a2 = np.clip(a,3,9) print("np.clip(a,3,9)的结果为:n",a2) # 将裁剪后的结果仍然赋值给a np.clip(a,3,9,out=a) print("np.clip(a,3,9,out=a)的结果:n", a) 执行结果: 3行6列的矩阵为: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] a.clip(3, 9)的结果为: [[3 3 3 4 5 6] [7 8 9 9 9 9] [9 9 9 9 9 9]] np.clip(a,3,9)的结果为: [[3 3 3 4 5 6] [7 8 9 9 9 9] [9 9 9 9 9 9]] np.clip(a,3,9,out=a)的结果: [[3 3 3 4 5 6] [7 8 9 9 9 9] [9 9 9 9 9 9]]4. numpy中的nan和inf 4.1 概念
(1)nan(NAN or Nan):not a number,表示不是一个数字。
numpy中出现nan的情况:
(1.1)读取本地文件为float的时候,如果有缺失,就会出现nan。
(1.2)做了一个不合适的计算的时候,比如无穷大减去无穷大。
(2)inf (-inf or inf):infinity,inf表示正无穷,-inf表示负无穷。
numpy中出现inf的情况:
(2.1)比如一个数字除以0。
import numpy as np b = np.nan print(b) print(type(b)) c = np.inf print(c) print(type(c))4.3 numpy中nan的注意点
(1)两个nan是不相等的。
print(np.nan != np.nan) 执行结果: True
(2)利用(1)的特性可以判断数组/矩阵中nan的个数。
import numpy as np a = np.array(range(1, 19), dtype=float).reshape(3, 6) print("3行6列的矩阵为:n", a) # 注意:在给数组/矩阵中的元素赋nan时,要统一元素的数据类型为float a[0:2,0:2]=np.nan print("赋值nan后的结果:n",a) print("a中nan的个数为:n",np.count_nonzero(a!=a)) 执行结果: 3行6列的矩阵为: [[ 1. 2. 3. 4. 5. 6.] [ 7. 8. 9. 10. 11. 12.] [13. 14. 15. 16. 17. 18.]] 赋值nan后的结果: [[nan nan 3. 4. 5. 6.] [nan nan 9. 10. 11. 12.] [13. 14. 15. 16. 17. 18.]] a中nan的个数为: 4
(3)使用 np.isnan(a) 判断某个数字是否为nan。
import numpy as np a = np.array(range(1, 19), dtype=float).reshape(3, 6) print("3行6列的矩阵为:n", a) # 判断数组/矩阵中的元素是否为nan,并对数值为nan的元素进行 *** 作 a[a < 4] = np.nan print("元素赋值为nan后的结果:n",a) a[np.isnan(a)] = 1 print("判断a中元素的值是否为nan,并将值为nan的元素赋值为1:n",a) # 单一数据赋值为nan b = np.nan print(np.isnan(b)) 执行结果: 3行6列的矩阵为: [[ 1. 2. 3. 4. 5. 6.] [ 7. 8. 9. 10. 11. 12.] [13. 14. 15. 16. 17. 18.]] 元素赋值为nan后的结果: [[nan nan nan 4. 5. 6.] [ 7. 8. 9. 10. 11. 12.] [13. 14. 15. 16. 17. 18.]] 判断a中元素的值是否为nan,并将值为nan的元素赋值为1: [[ 1. 1. 1. 4. 5. 6.] [ 7. 8. 9. 10. 11. 12.] [13. 14. 15. 16. 17. 18.]] True
(4)nan和任何值计算都得nan。
5. numpy中常用的统计函数(1)求和:t.sum(axis=None) (2)均值:t.mean(a,axis=None) (3)中值:np.median(t,axis=None) (4)最大值:t.max(axis=None) (5)最小值:t.min(axis=None) (6)极值:np.ptp(t,axis=None),即最大值与最小值只差 (7)标准差:t.std(axis=None),不加axis的话默认返回所有元素的标准差, 加axis的话返回某一axis方向的标准差。
import numpy as np a = np.array(range(1, 19), dtype=float).reshape(3, 6) print("3行6列的矩阵为:n", a) print("求和:",a.sum(axis=0)) print("最大值:",a.max(axis=0)) print("最小值:",a.min(axis=0)) print("均值:",a.mean(axis=0)) print("中值:",np.median(a,axis=0)) print("极值:",np.ptp(a,axis=0)) print("标准差:",a.std(axis=0)) 执行结果: 3行6列的矩阵为: [[ 1. 2. 3. 4. 5. 6.] [ 7. 8. 9. 10. 11. 12.] [13. 14. 15. 16. 17. 18.]] 求和: [21. 24. 27. 30. 33. 36.] 最大值: [13. 14. 15. 16. 17. 18.] 最小值: [1. 2. 3. 4. 5. 6.] 均值: [ 7. 8. 9. 10. 11. 12.] 中值: [ 7. 8. 9. 10. 11. 12.] 极值: [12. 12. 12. 12. 12. 12.] 标准差: [4.89897949 4.89897949 4.89897949 4.89897949 4.89897949 4.89897949]6.数组/矩阵的拼接、分割 6.1 数组/矩阵的拼接 6.1.1 竖直拼接
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("a:n", a) b = np.array(range(10, 190, 10), dtype=int).reshape(3, 6) print("b:n", b) v_ab = np.vstack((a, b)) print("竖直拼接:n", v_ab) 执行结果: a: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] b: [[ 10 20 30 40 50 60] [ 70 80 90 100 110 120] [130 140 150 160 170 180]] 竖直拼接: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [ 13 14 15 16 17 18] [ 10 20 30 40 50 60] [ 70 80 90 100 110 120] [130 140 150 160 170 180]]6.1.2 水平拼接
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("a:n", a) b = np.array(range(10, 190, 10), dtype=int).reshape(3, 6) print("b:n", b) h_ab = np.hstack((a,b)) print("水平拼接:n", h_ab) 执行结果: a: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] b: [[ 10 20 30 40 50 60] [ 70 80 90 100 110 120] [130 140 150 160 170 180]] 水平拼接: [[ 1 2 3 4 5 6 10 20 30 40 50 60] [ 7 8 9 10 11 12 70 80 90 100 110 120] [ 13 14 15 16 17 18 130 140 150 160 170 180]]6.2 数组/矩阵的分割 6.2.1 水平分割hsplit()
函数原型:
hsplit(ary, indices_or_sections) # ary表示待分割数组/矩阵 # indices_or_sections为一个整数或列表,表示将数组/矩阵分割 # 成几份或根据列表中的位置分割成几份。
import numpy as np a = np.array(range(1, 19), dtype=int).reshape(3, 6) print("a:n", a) # 将数组/矩阵a沿着水平方向(axis=1)平均分成2份即2个数组/矩阵 b, c = np.hsplit(a, 2) print("分割后的结果:") print("b:n", b) print("c:n", c) # 将数组/矩阵a根据分割位置[2,3,4]分割成4份即4个数组/矩阵 d, e, f ,g= np.hsplit(a, [2, 3, 4]) print("分割后的结果:") print("d:n", d) print("e:n", e) print("f:n", f) print("g:n", g) 执行结果: a: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18]] 分割后的结果: b: [[ 1 2 3] [ 7 8 9] [13 14 15]] c: [[ 4 5 6] [10 11 12] [16 17 18]] 分割后的结果: d: [[ 1 2] [ 7 8] [13 14]] e: [[ 3] [ 9] [15]] f: [[ 4] [10] [16]] g: [[ 5 6] [11 12] [17 18]]6.2.2 垂直分割vsplit()
函数原型:
vsplit(ary, indices_or_sections) # ary表示待分割数组/矩阵 # indices_or_sections为一个整数或列表,表示将数组/矩阵分割 # 成几份或根据列表中的位置分割成几份。
import numpy as np a = np.array(range(1, 25), dtype=int).reshape(4, 6) print("a:n", a) # 将数组/矩阵a沿着水平方向(axis=1)平均分成2份即2个数组/矩阵 b, c = np.vsplit(a, 2) print("分割后的结果:") print("b:n", b) print("c:n", c) # 将数组/矩阵a根据分割位置[2,3,4]分割成4份即4个数组/矩阵 d, e, f, g = np.vsplit(a, [1, 2, 3]) print("分割后的结果:") print("d:n", d) print("e:n", e) print("f:n", f) print("g:n", g) 执行结果: a: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18] [19 20 21 22 23 24]] 分割后的结果: b: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12]] c: [[13 14 15 16 17 18] [19 20 21 22 23 24]] 分割后的结果: d: [[1 2 3 4 5 6]] e: [[ 7 8 9 10 11 12]] f: [[13 14 15 16 17 18]] g: [[19 20 21 22 23 24]]6.2.3 指定轴分割split()
函数原型:
split(ary, indices_or_sections, axis=0) # ary表示待分割的数组/矩阵。 # indeices_or_sections表示整数或列表,可选参数。 # axis表示轴即分割方向,可选参数。
import numpy as np a = np.array(range(1, 25), dtype=int).reshape(4, 6) print("a:n", a) # 将数组/矩阵a沿着水平方向(axis=0)平均分成2份即2个数组/矩阵 b, c = np.split(a, 2, axis=0) print("分割后的结果:") print("b:n", b) print("c:n", c) # 将数组/矩阵a根据分割位置[2,3,4],沿着axis=1方向分割成4份即4个数组/矩阵 d, e, f, g = np.split(a, [1, 2, 3], axis=1) print("分割后的结果:") print("d:n", d) print("e:n", e) print("f:n", f) print("g:n", g) 执行结果: a: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18] [19 20 21 22 23 24]] 分割后的结果: b: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12]] c: [[13 14 15 16 17 18] [19 20 21 22 23 24]] 分割后的结果: d: [[ 1] [ 7] [13] [19]] e: [[ 2] [ 8] [14] [20]] f: [[ 3] [ 9] [15] [21]] g: [[ 4 5 6] [10 11 12] [16 17 18] [22 23 24]]6.2.4 深度分割dsplit()
深度分割的作用是将三维数组/矩阵沿着axis=2方向分割成若干个子数组/矩阵。
import numpy as np a = np.array(range(1, 25), dtype=int).reshape(2, 3, 4) print("a:n", a) # 将数组/矩阵a沿着axis=2)方向分成4个数组/矩阵 # b, c, d, e = np.dsplit(a, 4) b, c, d, e = np.dsplit(a, [1, 2, 3]) print("分割后的结果:") print("b:n", b) print("c:n", c) print("d:n", d) print("e:n", e) 执行结果: a: [[[ 1 2 3 4] [ 5 6 7 8] [ 9 10 11 12]] [[13 14 15 16] [17 18 19 20] [21 22 23 24]]] 分割后的结果: b: [[[ 1] [ 5] [ 9]] [[13] [17] [21]]] c: [[[ 2] [ 6] [10]] [[14] [18] [22]]] d: [[[ 3] [ 7] [11]] [[15] [19] [23]]] e: [[[ 4] [ 8] [12]] [[16] [20] [24]]]7. 数组/矩阵行列交换
import numpy as np a = np.array(range(1, 25), dtype=int).reshape(4, 6) print("a:n", a) a[[1, 2], :] = a[[2, 1], :] print("交换后的结果:") print("a:n", a) 执行结果: a: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18] [19 20 21 22 23 24]] 交换后的结果: a: [[ 1 2 3 4 5 6] [13 14 15 16 17 18] [ 7 8 9 10 11 12] [19 20 21 22 23 24]]8. numpy其它实用方法
(1)获取最大、最小值的下标索引:
(1.1)np.argmax(t, axis=0)
(1.2)np.argmin(t, axis=0)
(2)创建元素均为0的数组/矩阵np.zeros((3,4),dtype=int)
(3)创建元素均为1的数组/矩阵np.ones((3,4),dtype=int)
(4)创建对角线元素为1的单位矩阵np.eye(3)
import numpy as np a = np.array(range(1, 25), dtype=int).reshape(4, 6) print("a:n", a) print("求axis=0方向的最大值的下标索引n", np.argmax(a, axis=0)) print("求axis=1方向的最小值的下标索引:n", np.argmin(a, axis=1)) print("创建全0数组/矩阵n", np.zeros((3, 4), dtype=int)) print("创建全1数组/矩阵:n", np.ones((3, 4), dtype=int)) print("创建单位矩阵:n", np.eye(3, dtype=int)) 执行结果: a: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12] [13 14 15 16 17 18] [19 20 21 22 23 24]] 求axis=0方向的最大值的下标索引 [3 3 3 3 3 3] 求axis=1方向的最小值的下标索引: [0 0 0 0] 创建全0数组/矩阵 [[0 0 0 0] [0 0 0 0] [0 0 0 0]] 创建全1数组/矩阵: [[1 1 1 1] [1 1 1 1] [1 1 1 1]] 创建单位矩阵: [[1 0 0] [0 1 0] [0 0 1]]9. numpy 生成随机数
import numpy as np # 加上随机种子后,每次产生的随机数可以保持不变 np.random.seed(10) print("均匀分布随机数组:n",np.random.rand(3,4)) print("给定上下限的整数随机数组:n",np.random.randint(1,10,(3,3))) print("标准正态随机数组:n",np.random.randn(3,3)) print("均匀分布随机数组:n",np.random.uniform(1,10,(3,3))) print("正态分布中随机抽取样本,设置分布中心、标准差、形状:n",np.random.normal(0,1,(3,4))) 执行结果: 均匀分布随机数组: [[0.77132064 0.02075195 0.63364823 0.74880388] [0.49850701 0.22479665 0.19806286 0.76053071] [0.16911084 0.08833981 0.68535982 0.95339335]] 给定上下限的整数随机数组: [[7 9 2] [9 5 2] [4 7 6]] 标准正态随机数组: [[-1.13660221 0.13513688 1.484537 ] [-1.07980489 -1.97772828 -1.7433723 ] [ 0.26607016 2.38496733 1.12369125]] 均匀分布随机数组: [[8.24700877 5.69482437 9.17783993] [3.8731248 1.81413414 3.70630051] [2.02585926 8.45813194 1.42206687]] 正态分布中随机抽取样本,设置分布中心、标准差、形状: [[ 1.67262221 0.80705192 2.14180538 -0.49561818] [ 0.52563742 -0.38964647 0.9372965 -0.8169742 ] [ 1.01961544 -0.34143633 0.7512814 -0.36225179]]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)