numpy中matrix 和 array的区别

时间:2021-04-03 21:25:03

Numpy matrices必须是2维的,但是 numpy arrays (ndarrays) 可以是多维的(1D,2D,3D····ND). Matrix是Array的一个小的分支,包含于Array。所以matrix 拥有array的所有特性。下面看一个实例:


import numpy as np

dataSet = [[1,2],[3,4],[5,6],[7,8],[9,10]]

data1 = np.mat(dataSet).T
data2 = np.array(dataSet).T

print data1,'\n'
print data2,'\n\n'


print data1[0],'\n'
print data2[0],'\n'

print data1[:,0],'\n'
print data2[:,0],'\n\n'


[[ 1  3  5  7  9]  #直接访问全部数据,两种操作是一样的
 [ 2  4  6  8 10]] 

[[ 1  3  5  7  9]
 [ 2  4  6  8 10]] 



[[1 3 5 7 9]]  #取一部分数据时,注意mat必须是二维的,因此会出现不同的地方


[1 3 5 7 9] 



[[1]           #取一部分数据时,注意mat必须是二维的,因此会出现不同的地方
 [2]] 

[1 2]