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]]
相關文章
- 機器學習二——利用numpy庫對矩陣進行操作機器學習矩陣
- 矩陣:如何使用矩陣操作進行 PageRank 計算?矩陣
- 奇異矩陣與非奇異矩陣的定義與區別矩陣
- sql對錶資料進行復制SQL
- 【OpenCV教程】OpenCV中對矩陣的常用操作OpenCV矩陣
- 角軸與反對稱矩陣矩陣
- python可以對excel進行那些操作PythonExcel
- 對2個hex(16進位制)字串進行異或操作字串
- 【TcaplusDB知識庫】如何對陣列進行操作陣列
- 【C#】對兩張圖片進行矩陣運算會怎麼樣?C#矩陣
- 頭條號矩陣運營工具,運營矩陣進行多賬號管理矩陣
- MATLAB(4)矩陣操作Matlab矩陣
- 機器學習中的矩陣向量求導(五) 矩陣對矩陣的求導機器學習矩陣求導
- Proc中使用char陣列、VARCHAR陣列和char變數進行DELETE操作具體行數的細微區別陣列變數delete
- 已知一個矩陣,將矩陣中和值最大的一行元素與首行互換矩陣
- 對目錄進行操作
- 文字檔案與二進位制檔案的區別
- Python如何對浮點數進行取整操作?Python
- python對solr進行查詢、插入操作(GET\POST)PythonSolr
- [python]使用xlrd對Excel表格進行讀寫操作PythonExcel
- spark向量、矩陣型別Spark矩陣型別
- 使用世界變換的逆轉置矩陣對法線進行變換矩陣
- 【Mongo】Mongodump 與 mongorestore對mongo進行備份恢復GoREST
- 演算法-陣列與矩陣演算法陣列矩陣
- 雜項——矩陣加速(進階)矩陣
- 【numpy學習筆記】矩陣操作筆記矩陣
- R語言矩陣基礎操作R語言矩陣
- 利用kvo對集合進行操作
- 三維空間變換中旋轉矩陣左乘與右乘的區別矩陣
- BZOJ3329: Xorequ(二進位制數位dp 矩陣快速冪)矩陣
- 陣列中&a與&a[0]的區別陣列
- 對二所ATC的MySQL進行 備份與恢復MySql
- 生成螺旋矩陣(方陣、矩陣)矩陣
- 百家號矩陣管理工具,矩陣管理多個平臺,一鍵進行分發矩陣
- 高效能運算&CUDA | 使用numba對三維矩陣在gpu上進行運算矩陣GPU
- python輸入詳解(陣列、矩陣)Python陣列矩陣
- 指標 與 陣列 以及 a 與 &a的區別指標陣列
- JQ操作類與JS操作類的區別JS