1、获取矩阵行列数
进口numpyasnp
#创建二维的naaray对象
=np.array ([[1、2、3、4、5], [6 7 8 9 10]])
打印(a.shape),,#返回一个形状,是一个元组
print (a.shape[0]) #获得行数,试想如果是多维的呢,所以你就会明白为什么是[0]
print (a.shape [1]),,#获得列数
2、矩阵的截取
importnumpyasnp
#创建二维的naaray对象
=np.array ([[1、2、3、4、5], [6 7 8 9 10]])
打印((0:1))#这里不是很懂,看下面
打印([1,2:4])#返回[89],返回第二行2 - 3个数
打印([1,2:5])#返回[8910]证明了取第二行的2 - 4个数
3,按条件截取
importnumpyasnp
#创建二维的naaray对象
=np.array ([[1、2、3、4、5], [6 7 8 9 10]])
b=(a> 6) #截取矩阵一个中大于6的元素,范围的是一维数组
打印(b)
打印(a> 6) #其实布尔语句首先生成一个布尔矩阵,将布尔矩阵传入[](方括号)实现截取
4,满足一定条件的元素变成特定的值
importnumpyasnp
#创建二维的naaray对象
=np.array ([[1、2、3、4、5], [6 7 8 9 10]])
print ()
#大于6清零后矩阵为
(a> 6)=0
print ()
结果分别为:
[[12345年]
[678910]]
[[12345年]
[60000]]
5、矩阵合并
importnumpyasnp
,
a1=np.array ([[1、2], [3,4]])
a2=np.array ([[5, 6], [7,8]])
,
print (np.hstack ((a1, a2))) #水平
打印(a1) #所以知道为什么是1256年,2478年了
print (np.vstack ((a1, a2))) #垂直
np.concatenate ((a1, a2),轴=0)#等价于np.vstack ((a1, a2))
np.conca
6,通过函数创建矩阵
numpy自带创建narray对象的函数,可以方便的创建常用的有规律的矩阵
importnumpyasnp
一个=np.arange(10) #默认从0开始到10(不包括10),步长为1
打印(a) #返回(0123456789)
a1=np.arange(5、10) #从5开始到10(不包括10),步长为1
打印(a1) #返回[56789]
a2=np.arange(2) 5, 20日#从5开始到20(不包括20),步长为2
打印(a2) #返回(5791113151719)
,
7,linspace
创建指定数量等间隔的序列,实际生成一个等差数列
importnumpyasnp
,
a=np.linspace(7) 0, 10日#生成首位是0,末位是10,含7个数的等差数列
print ()
8日,logspace
logspace用于生成等比数列只
importnumpyasnp
,
a=np.logspace(7) 0, 10日#生成首位是10 * * 0,末位是10 * * 4,含5个数的等比数列
print ()
9的零,眼睛,空的
的创建全1矩阵,
零创建全0矩阵,
眼睛创建单位矩阵,
空创建空矩阵(实际有值)
importnumpyasnp
,
一个=np.ones((3, 4)) #创建3 * 4的全1矩阵
打印(一)
,
0=np.zeros((3、4) #创建3 * 4的全0矩阵
打印(零)
,
眼睛=np.eye(5) #创建5阶单位矩阵
打印(眼睛)
,
空=np.empty((3、4) #创建3 * 4的空矩阵(实际有值)