对矩阵的操作1

reshape:

matrix = numpy.arange(15)  #创建一个从0开始的有15个元素的numpy array

new_matrix = matrix.reshape(5,3)   #向量->矩阵

print (matrix)

print (new_matrix)

print (new_matrix.shape)   #输出行列数

print (new_matrix.size)  #输出元素数

print (new_matrix.dtype)  #输出type

结果

创建全是0或1的矩阵:

matrix_zero = numpy.zeros((3,4),dtype = numpy.int32)

matrix_one = numpy.ones((3,4),dtype = numpy.int32)

print (matrix_zero)

print (matrix_one)

结果

创建从10开始每个元素+5加到30的numpy array:

numpy.arange(10,30,5)     #从10开始不包括30

结果

创建随机数(0~1)的矩阵

numpy.random.random((2,3))

结果

创建从0到2π之间的且累加的共100个元素的矩阵:

from numpy import pi

numpy.linspace(0,2*pi,100)  (结果是1行100列)

结果

矩阵转置:

a = numpy.arange(4).reshape(2,-1)

print (a)

print ("----------")

print (a.T)

结果

floor(向下取整)与ravel(矩阵->向量):

matrix = 10*numpy.random.random((3,4))

print (matrix)

print (numpy.floor(matrix))

print (matrix.ravel())

print (matrix.reshape(6,-1))   #向量->矩阵 ,  -1是已知行数的情况下自动计算列数

结果

矩阵拼接:

a = numpy.floor(10*numpy.random.random((2,2)))

b = numpy.floor(10*numpy.random.random((2,2)))

print (a)

print (b)

print ("---------")

print (numpy.hstack((a,b)))     #横着拼接

print (numpy.vstack((a,b)))     #竖着拼接

结果

矩阵分割:

a = numpy.arange(24).reshape(2,-1)

print (a)

print (numpy.hsplit(a,4))

print (numpy.hsplit(a,(3,4)))

结果

b = a.T

print (b)

print ("------------")

print (numpy.vsplit(b,3))

print ("------------")

print (numpy.vsplit(b,(3,4)))

结果

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容