欢迎这位怪蜀黍来到《Python机器学习(四十九)NumPy 矩阵库函数 - 大码王 - 博客园》

关闭页面特效

 


NumPy包含一个矩阵库NumPy.matlib,这个模块的函数用于处理矩阵而不是ndarray对象。

NumPy中,ndarray数组可以是n维的,与此不同,矩阵总是二维的,但这两种对象可以相互转换。

matlib.empty()

empty()函数返回一个新的矩阵,但不会初始化矩阵元素。

numpy.matlib.empty(shape, dtype, order)
  • shape 定义新矩阵形状的int或int的元组
  • dtype 可选,指定矩阵数据类型
  • order C 或 F

示例

import numpy.matlib 
import numpy as np 

a = np.matlib.empty((2,2))
print (a)

输出

[[6.91241356e-310 1.37748664e-316]
 [6.91240378e-310 6.91240378e-310]]

可以看到,矩阵元素都是随机值。

numpy.matlib.zeros()

zeros()函数返回一个新的矩阵,矩阵元素被初始化为0。

示例

import numpy.matlib 
import numpy as np 

a = np.matlib.zeros((2,2))
print (a)

输出

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

numpy.matlib.ones()

zeros()函数返回一个新的矩阵,矩阵元素被初始化为1。

示例

import numpy.matlib 
import numpy as np 

a = np.matlib.zeros((2,2))
print (a)

输出

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

numpy.matlib.eye()

eye()函数返回一个矩阵,对角线上的元素都是1,其它地方都是0。该函数接受以下参数。

numpy.matlib.eye(n, M, k, dtype)
  • n 返回矩阵中的行数
  • M 列数,默认为n
  • k 对角线的开始索引
  • dtype 矩阵的数据类型

示例

复制代码
import numpy.matlib 
import numpy as np 

print('对角线的开始索引为0:')
print(np.matlib.eye(n = 3, M = 4, k = 0, dtype = float))
print('\n')

print('对角线的开始索引为1:')
print(np.matlib.eye(n = 3, M = 4, k = 1, dtype = float))
print('\n')
复制代码

输出

复制代码
对角线的开始索引为0:
 [[1. 0. 0. 0.]
  [0. 1. 0. 0.]
  [0. 0. 1. 0.]]

对角线的开始索引为1:
[[0. 1. 0. 0.]
 [0. 0. 1. 0.]
 [0. 0. 0. 1.]]
复制代码

numpy.matlib.identity()

identity()函数返回指定大小的单位矩阵。单位矩阵是一个所有对角元素都为1的方阵。

示例

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()

`rand()`函数返回一个指定大小的矩阵,其中填充随机值。

**示例**

```python
import numpy.matlib 
import numpy as np 
print (np.matlib.rand(3,3))
复制代码

输出

[[0.5413199  0.5749519  0.19755942]
 [0.57128833 0.24267348 0.65186677]
 [0.08517    0.9238393  0.15061818]]

 

 posted on   大码王  阅读(357)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具

成都

复制代码

喜欢请打赏

扫描二维码打赏

了解更多

点击右上角即可分享
微信分享提示

目录导航