『壹』 python表示矩陣的方法分析
Python表示矩陣的方法分析
本文實例講述了Python表示矩陣的方法。分享給大家供大家參考,具體如下:
在c語言中,表示個「整型3行4列」的矩陣,可以這樣聲明:int a[3][4];在python中一不能聲明變數int,二不能列出維數。可以利用列表中夾帶列表形式表示。例如:
表示矩陣 ,可以這樣:
count = 1
a = []
for i in range(0, 3):
tmp = []
for j in range(0, 3):
tmp.append(count)
count += 1
a.append(tmp)
print a
結果:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
但是注意一點:初始化(賦值全部為0時),下面是錯誤的!!
tmp = []
for j in range(0, 3):
tmp.append(0)
a = []
for i in range(0, 3):
a.append(tmp)
print a
結果:
[[0, 0, 0], [0, 0, 0], [0, 0, 0]]
原因:這樣的列表tmp為同一個,改變任意行,其他行都會給隨著改變,千萬注意!!,下面正確:
a = []
for i in range(0, 3):
tmp = []
for j in range(0, 3):
tmp.append(0)
a.append(tmp)
print a
『貳』 python numpy 求矩陣有多少列
想知道矩陣A的行數和列數用np.size()函數
np.size(A,0)為此告矩陣A的行數
np.size(A,1)為矩陣A的列森哪明數
(x,y)=np.shape(A)分別求矩陣緩鄭的行和列
『叄』 python中numpy矩陣重排列是按行還是按列
Numpy可以使用reshape()函數進行矩陣重排列,默認按行排列(C語言風格),通過修改order參數可以改為按列排列(Fortran風格)。參考例子:
In[1]:importnumpyasnp
In[2]:a=np.array([[1,2,3],[4,5,6]])
In[3]:printa
[[123]
[456]]
In[4]:b=a.reshape((3,2))#默認按行排列
In[5]:printb
[[12]
[34]
[56]]
In[6]:c=a.reshape((3,2),order='F')#改為Fortran風格的按列排列
In[7]:printc
[[15]
[43]
[26]]
『肆』 python中如何在矩陣中添加一列或是一行
例如文件t.data數據格式如下 1,2,3 4,5,6 7,8,9 //讀入文件 file=open("t.data","r") //初始化矩陣 matrix=[] //讀入數據並加到矩陣中 for line in file: line.strip() matrix.append(line.split(',')) //列印 print(matrix)
『伍』 Python中怎樣使用shape計算矩陣的行和列
你得先安裝numpy庫,矩陣(ndarray)的shape屬性可以獲取矩陣的形狀(例如二維數組的行列),獲取的結果是一個元組,因此相關代碼如下:
importnumpyasnp
x=np.array([[1,2,5],[2,3,5],[3,4,5],[2,3,6]])
#輸出數組的行和列數
printx.shape#(4,3)
#只輸出行數
printx.shape[0]#4
#只輸出列數
printx.shape[1]#3