網(wǎng)站首頁(yè) 編程語(yǔ)言 正文
python生成單位陣或?qū)顷?/h2>
前提:
import numpy as np
1.identity
np.identity(4) array([[ 1., 0., 0., 0.], [ 0., 1., 0., 0.], [ 0., 0., 1., 0.], [ 0., 0., 0., 1.]])
2.eye
np.eye(4) array([[1., 0., 0., 0.], [0., 1., 0., 0.], [0., 0., 1., 0.], [0., 0., 0., 1.]])
3.diag(可以指定對(duì)角元素)
np.diag([1] * 4) Out[1]:? array([[1, 0, 0, 0], ? ? ? ?[0, 1, 0, 0], ? ? ? ?[0, 0, 1, 0], ? ? ? ?[0, 0, 0, 1]]) np.diag([2] * 4) Out[2]:? array([[2, 0, 0, 0], ? ? ? ?[0, 2, 0, 0], ? ? ? ?[0, 0, 2, 0], ? ? ? ?[0, 0, 0, 2]])
有趣的地方是前兩種方法元素都是浮點(diǎn)數(shù),最后一種是整數(shù),使用的時(shí)候注意區(qū)分就好
python創(chuàng)建對(duì)角陣的np.eye()函數(shù)
最近博主在研究kalman濾波,里面初始矩陣定義需要對(duì)角陣,于是查了一些資料,發(fā)現(xiàn)numpy中有一個(gè)eye函數(shù)可以達(dá)到這樣的目的
np.eye(N,M=None,k=0,dtype=<class 'float'>,order='C)
-
N
表示輸出的行數(shù); -
M
表示輸出的列數(shù),不給默認(rèn)等于N; -
K
默認(rèn)等于0,表示主對(duì)角線,負(fù)數(shù)代表低對(duì)角,正數(shù)代表高對(duì)角; -
dtype
表示輸出數(shù)據(jù)的類(lèi)型; -
order
表示輸出的數(shù)組的形式是按照C語(yǔ)言的行優(yōu)先’C’,還是按照Fortran形式的列優(yōu)先‘F’存儲(chǔ)在內(nèi)存中。
看下面兩個(gè)例子就明白用法啦
a = np.eye(4) print(type(a)) print(a) a = np.mat(a) print(type(a)) print(a) a = a.I print(type(a)) print(a) >>><class 'numpy.ndarray'> [[1. 0. 0. 0.] [0. 1. 0. 0.] [0. 0. 1. 0.] [0. 0. 0. 1.]] <class 'numpy.matrix'> [[1. 0. 0. 0.] [0. 1. 0. 0.] [0. 0. 1. 0.] [0. 0. 0. 1.]] <class 'numpy.matrix'> [[1. 0. 0. 0.] [0. 1. 0. 0.] [0. 0. 1. 0.] [0. 0. 0. 1.]]
a = np.eye(4,k=1) print(type(a)) print(a) a = np.mat(a) print(type(a)) print(a) a = a.T print(type(a)) print(a) >>><class 'numpy.ndarray'> [[0. 1. 0. 0.] [0. 0. 1. 0.] [0. 0. 0. 1.] [0. 0. 0. 0.]] <class 'numpy.matrix'> [[0. 1. 0. 0.] [0. 0. 1. 0.] [0. 0. 0. 1.] [0. 0. 0. 0.]] <class 'numpy.matrix'> [[0. 0. 0. 0.] [1. 0. 0. 0.] [0. 1. 0. 0.] [0. 0. 1. 0.]]
原文鏈接:https://blog.csdn.net/qq_41542989/article/details/111587600
相關(guān)推薦
- 2023-06-18 Redis優(yōu)雅地實(shí)現(xiàn)延遲隊(duì)列的方法分享_Redis
- 2022-07-11 關(guān)于mv3 - Uncaught TypeError: Cannot read properties
- 2023-10-27 np.zeros()函數(shù)的使用方法_python
- 2022-09-27 python常見(jiàn)運(yùn)算符及用法小結(jié)_python
- 2023-03-01 kotlin?object關(guān)鍵字單例模式實(shí)現(xiàn)示例詳解_Android
- 2022-05-15 Python?文本文件與csv文件的讀取與寫(xiě)入_python
- 2022-03-09 GO使用socket和channel實(shí)現(xiàn)簡(jiǎn)單控制臺(tái)聊天室_Golang
- 2022-10-05 Python數(shù)據(jù)可視化制作全球地震散點(diǎn)圖_python
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過(guò)濾器
- Spring Security概述快速入門(mén)
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡(jiǎn)單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對(duì)象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支