python 對矩陣進行復制操作 np.repeat 與 np.tile區別
python 對矩陣進行復制操作 np.repeat 與 np.tile區別
二者區別
二者執行的是均是複製操作;
np.repeat:複製的是多維陣列的每一個元素;axis來控制複製的行和列
np.tile:複製的是多維陣列本身;
import numpy as np
通過help 檢視基本的引數
help(np.repeat)
help(np.tile)
案例對比
np.repeat
x = np.arange(1, 5).reshape(2, 2)
print(x)
[[1 2]
[3 4]]
print(np.repeat(x, 2))
[1 1 2 2 3 3 4 4]
對陣列中的每一個元素進行復制
除了待重複的陣列之外,只有一個額外的引數時,高維陣列也會 flatten 至一維
c = np.array([1,2,3,4])
print(np.tile(c,(4,2)))
[[1 2 3 4 1 2 3 4]
[1 2 3 4 1 2 3 4]
[1 2 3 4 1 2 3 4]
[1 2 3 4 1 2 3 4]]
當然將高維 flatten 至一維,並非經常使用的操作,也即更經常地我們在某一軸上進行復制,比如在行的方向上(axis=1),在列的方向上(axis=0):
print(np.repeat(x, 3, axis=1))
[[1 1 1 2 2 2]
[3 3 3 4 4 4]]
print(np.repeat(x, 3, axis=0))
[[1 2]
[1 2]
[1 2]
[3 4]
[3 4]
[3 4]]
當然更為靈活地也可以在某一軸的方向上(axis=0/1),對不同的行/列複製不同的次數:
print(np.repeat(x, (2, 1), axis=0))
[[1 2]
[1 2]
[3 4]]
print(np.repeat(x, (2, 1), axis=1))
[[1 1 2]
[3 3 4]]
np.tile
python numpy 下的 np.tile有些類似於 matlab 中的 repmat函式。不需要 axis 關鍵字參數,僅通過第二個引數便可指定在各個軸上的複製倍數。
a = np.arange(3)
print(a)
[0 1 2]
print(np.tile(a, 2))
[0 1 2 0 1 2]
print(np.tile(a, (2, 2)))
[[0 1 2 0 1 2]
[0 1 2 0 1 2]]
第二個引數便可指定在各個軸上的複製倍數。
b = np.arange(1, 5).reshape(2, 2)
print(b)
[[1 2]
[3 4]]
print(np.tile(b, 2))
[[1 2 1 2]
[3 4 3 4]]
print(np.tile(b, (1, 2)))
[[1 2 1 2]
[3 4 3 4]]
相關文章
- 矩陣:如何使用矩陣操作進行 PageRank 計算?矩陣
- 機器學習二——利用numpy庫對矩陣進行操作機器學習矩陣
- 奇異矩陣與非奇異矩陣的定義與區別矩陣
- python可以對excel進行那些操作PythonExcel
- 【OpenCV教程】OpenCV中對矩陣的常用操作OpenCV矩陣
- 角軸與反對稱矩陣矩陣
- 【TcaplusDB知識庫】如何對陣列進行操作陣列
- 頭條號矩陣運營工具,運營矩陣進行多賬號管理矩陣
- Python的向量和矩陣乘法意義大全包括dot和*的區別(2020)Python矩陣
- Python如何對浮點數進行取整操作?Python
- 【C#】對兩張圖片進行矩陣運算會怎麼樣?C#矩陣
- 已知一個矩陣,將矩陣中和值最大的一行元素與首行互換矩陣
- 使用世界變換的逆轉置矩陣對法線進行變換矩陣
- 機器學習中的矩陣向量求導(五) 矩陣對矩陣的求導機器學習矩陣求導
- BZOJ3329: Xorequ(二進位制數位dp 矩陣快速冪)矩陣
- 【numpy學習筆記】矩陣操作筆記矩陣
- 演算法-陣列與矩陣演算法陣列矩陣
- 【Mongo】Mongodump 與 mongorestore對mongo進行備份恢復GoREST
- python輸入詳解(陣列、矩陣)Python陣列矩陣
- 三維空間變換中旋轉矩陣左乘與右乘的區別矩陣
- 雜項——矩陣加速(進階)矩陣
- JQ操作類與JS操作類的區別JS
- 百家號矩陣管理工具,矩陣管理多個平臺,一鍵進行分發矩陣
- 高效能運算&CUDA | 使用numba對三維矩陣在gpu上進行運算矩陣GPU
- python以16進位制列印位元組陣列Python陣列
- Python如何進行陣列去重?Python陣列
- 巨大的矩陣(矩陣加速)矩陣
- 鄰接矩陣、度矩陣矩陣
- Python對字典進行排序Python排序
- PHP 中的陣列相加操作以及與 array_merge 之間的區別PHP陣列
- Python中 ‘==‘ 與‘is‘的區別Python
- 第三章,矩陣,03-矩陣與行列式矩陣
- 奇異矩陣,非奇異矩陣,偽逆矩陣矩陣
- 陣列filter方法對陣列元素進行過濾陣列Filter
- 物件陣列與一般陣列的區別物件陣列
- 如何利用散點圖矩陣進行資料視覺化矩陣視覺化
- 學習分享:對極幾何、基本矩陣、本質矩陣(持續更新)矩陣
- 矩陣樹定理與BEST定理矩陣