NumPy学习笔记19.矩阵库(Matrix)

NumPy矩阵库(Matrix)

NumPy中包含了一个矩阵库numpy.matlib,该模块中的函数返回的是一个矩阵,而不是ndarray对象。
一般是 m X n ;m是行(row),n是列(column)
矩阵里的元素可以是数字、符号或数学式。如下4行5列矩阵:

[ a b c d e f g h i j k l m n o p q r s t ] \left[ \begin{matrix} a & b & c & d & e\\ f & g & h & i & j \\ k & l & m & n & o \\ p & q & r & s & t \end{matrix} \right] afkpbglqchmrdinsejot

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)))  # 填充为随机数据
[[9.90263869e+067 8.01304531e+262]
 [2.60799828e-310 0.00000000e+000]]
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()

numpy.matlib.identity()函数返回给定大小的单位矩阵。
单位矩阵是个方阵,从左上角到右下角的对角线(称为主对角线)上的元素均为1,除此以外全都是0.

import numpy.matlib
import numpy as np

# 大小为5,类型位浮点型
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.01973713 0.84200664 0.76942969]
 [0.8239831  0.1061749  0.20445777]
 [0.21793734 0.54064737 0.15245786]]
# 矩阵总是二维的,而 ndarray 是一个 n 维数组。 两个对象都是可互换的。
import numpy.matlib
import numpy as np

i = np.matrix('1,2;3,4')
print(i)
[[1 2]
 [3 4]]
import numpy.matlib 
import numpy as np  
 
j = np.asarray(i)  
print (j)
[[1 2]
 [3 4]]
import numpy.matlib 
import numpy as np  
 
k = np.asmatrix (j)  
print (k)
[[1 2]
 [3 4]]

学习参考:

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZPILOTE

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值