天天看點

python處理數組矩陣

1、函數可以對矩陣、數組内每個數都操作

from numpy import *
a=mat([[,],[,]])
def sun(inx):
    return inx+
print(sun(a))
           

輸出[[6 7]

[7 6]]

2、矩陣和數組加減乘除,傳回一個矩陣

3、數組的表示、矩陣的表示

a=array([[1,2],[2,1]])
a=array([,,,])
a=mat([[1,2],[2,1]])
           

4、周遊多元數組、矩陣

a=mat([[,],[,]])
def sum(x):
    for i in x:
        print(i)
sum(a)
           

5、求數組、矩陣的大小

a=mat([[1,2],[2,1],[1,3]])
print(shape(a),len(a),shape(a)[])
輸出結果:
(, )  
           

5、取出某行或某列,數組和矩陣有差別

a=mat([[1,1],[2,2],[3,3]])
b=a[:,]
print(b)
輸出
[[1]
 [2]
 [3]]
a=array([[1,1],[2,2],[3,3]])
b=a[:,]
print(b)
輸出
[  ]
           

6、矩陣、數組選出特定多行特定多列

a=array([[1,1],[2,2],[3,3]])
b=a[:,:]
print(b)
輸出
[[1 1]
 [2 2]]
           
a=array([[1,1],[2,2],[3,3]])
b=a[::,:]
print(b)
輸出
[[1 1]
 [3 3]]
           
取出某些行
a=mat([[1,1],[2,2],[3,3]])
c=[i for i in range() if i%==]
b=a[c]
print(b)
輸出:
[[1 1]
 [3 3]]
           
取出某些列
a=mat([[1,1,1],[2,2,2],[3,3,3]])
c=[i for i in range() if i%==]
b=a[:,c]
print(b)
輸出:
[[1 1]
 [2 2]
 [3 3]]
           
取出某些點,e,c分别對應橫縱坐标
a=mat([[1,2,3],[4,5,6],[7,8,9]])
c=[i for i in range() if i%==]
e=[i for i in range() if i%==]
b=a[e,c]
print(b)
輸出:
[[1 9]]
           

值得注意的是,分片不會和原序列共享資料空間,但是會和數組共享資料空間!