标签:Matrix 22 NumPy 矩阵 print np import numpy matlib
NumPy 提供了一个 矩阵库模块numpy.matlib
,该模块中的函数返回的是一个 matrix 对象,而非 ndarray 对象。矩阵由 m 行 n 列(m*n)元素排列而成,矩阵中的元素可以是数字、符号或数学公式等。
matlib.empty()
matlib.empty() 返回一个空矩阵,所以它的创建速度非常快。
numpy.matlib.empty(shape, dtype, order)
该函数的参数说明如下:
- shape:以元组的形式指定矩阵的形状。
- dtype:表示矩阵的数据类型。
- order:有两种选择,C(行序优先) 或者 F(列序优先)。
示例如下:
- import numpy.matlib
- import numpy as np
- #矩阵中会填充无意义的随机值
- print(np.matlib.empty((2,2)))
输出结果:
[[1.81191899e+167 6.65173396e-114]
[9.71613265e-243 6.96320200e-077]]
numpy.matlib.zeros()
numpy.matlib.zeros() 创建一个以 0 填充的矩阵,示例如下:
- import numpy.matlib
- import numpy as np
- print(np.matlib.zeros((2,2)))
输出结果:
[[ 0. 0.]
[ 0. 0.]]
numpy.matlib.ones()
numpy.matlib.ones() 创建一个以 1 填充的矩阵。
- import numpy.matlib
- import numpy as np
- print(np.matlib.ones((2,2)))
输出结果:
[[ 1. 1.]
[ 1. 1.]]
numpy.matlib.eye()
numpy.matlib.eye() 返回一个对角线元素为 1,而其他元素为 0 的矩阵 。
numpy.matlib.eye(n,M,k, dtype)
- n:返回矩阵的行数;
- M:返回矩阵的列数,默认为 n;
- k:对角线的索引;
- dtype:矩阵中元素数据类型。
示例如下:
- import numpy.matlib
- import numpy as np
- print (np.matlib.eye(n = 3, M = 4, k = 0, dtype = float))
输出结果:
[[1. 0. 0. 0.]
[0. 1. 0. 0.]
[0. 0. 1. 0.]]
numpy.matlib.identity()
该函数返回一个给定大小的单位矩阵,矩阵的对角线元素为 1,而其他元素均为 0。
- import numpy.matlib
- import numpy as np
- print np.matlib.identity(5, dtype = float)
输出结果:
[[ 1. 0. 0. 0. 0.]
[ 0. 1. 0. 0. 0.]
[ 0. 0. 1. 0. 0.]
[ 0. 0. 0. 1. 0.]
[ 0. 0. 0. 0. 1.]]
numpy.matlib.rand()
numpy.matlib.rand() 创建一个以随机数填充,并给定维度的矩阵。示例如下:
- import numpy.matlib
- import numpy as np
- print (np.matlib.rand(3,3))
示例如下:
[[0.23966718 0.16147628 0.14162 ]
[0.28379085 0.59934741 0.62985825]
[0.99527238 0.11137883 0.41105367]]
这里需要注意,因为 matrix 只能表示二维数据,而 ndarray 也可以是二维数组,所以两者可以互相转换。示例如下:
- #创建矩阵i
- import numpy.matlib
- import numpy as np
- i = np.matrix('1,2;3,4')
- print (i)
输出结果:
[[1 2]
[3 4]]
实现 matrix 与 ndarray 之间的转换,如下所示:
- import numpy.matlib
- import numpy as np
- j = np.asarray(i)
- print (j)
- k = np.asmatrix (j)
- print (k)
输出结果:
ndarray:
[[1 2]
[3 4]]
matrix:
[[1 2]
[3 4]]
标签:Matrix,22,NumPy,矩阵,print,np,import,numpy,matlib 来源: https://www.cnblogs.com/55zjc/p/16544519.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。