1 矩阵的输出
先初始
import numpy as np
'''a=np.arange(3,15).reshape((3,4))
1.1 按行输出
for row in a: # 按列输出,按行就把转置去掉
print(row)
**```
1.2 按列输出**
for row in a.T: # 按列输出,按行就把转置去掉
print(row)
**1.3 输出为一行**
flatten迭代器
print(a.T.flatten()) #迭代器,将矩阵转换成一行
**1.4 输出为一列**
for i in a.flat:
print(i) #输出成一列
**2 矩阵的合并**
初始化
a1=np.array([1,1,1])
b1=np.array([2,2,2])
```
2.1 纵向合并
print(np.vstack((a1,b1))) #vertical stack
2.2 横向合并
print(np.hstack((a1,b1))) #horizontal stack
2.3 对array进行转置
print(a1[:,np.newaxis]) #利用newaxis进行转置
newaxis相当于一维,即把a1转化为n维1列即对a1转置成功
2.4 合并多个
利用concatenate合并多个array
print(np.concatenate((a1,a1,a1),axis=0)) #多个矩阵一起
3 对矩阵分割
纵向分割与横向分割
'print(np.split(a,2,axis=1)[0],np.split(a,2,axis=1))
axis=1说明进行,横向分割,‘2‘指的是,把a分成两部分
另一种方式的分割
print(np.hsplit(a,2)) #水平分割
print(np.split(a,3,axis=0)) # 纵向
print(np.vsplit(a,3)) #纵向
不等分割
print(np.array_split(a,2,axis=0))#不等分割
4 ‘=‘’array中对于数组的赋值是关联
即a=b,则我对a进行改变b也会改变,对b改变a也会改变
对于单个值‘=’无关联
a=1
b=a
a=2
print(a,b)
a = np.arange(4)
# array([0, 1, 2, 3])
b = a
c = a
d = b
a[0] = 11
print(a,b,d)
无关联则采用copy
b = a.copy() # deep copy
print(b) # array([11, 22, 33, 3])
a[3] = 44
print(a) # array([11, 22, 33, 44])
print(b) # array([11, 22, 33, 3])
本文详细介绍了使用NumPy进行矩阵操作的方法,包括矩阵的输出、合并、分割以及数组赋值的特点。通过具体代码示例,讲解了如何按行、按列输出矩阵,如何进行矩阵的纵向和横向合并,以及如何分割矩阵。同时,还探讨了数组赋值的关联性和如何避免这一特性。
1661

被折叠的 条评论
为什么被折叠?



