作者skyconquer (梅郭曲)
标题Re: [问题] Numpy shape问题
时间Wed Jun 3 18:06:26 2020
※ 引述《s90104123 (也许当时忙着微笑和哭泣)》之铭言:
: 我有两个都是1*3矩阵
: [[0, 1, 0, 1, 0], [0, 0, 0, 0, 1], [0, 1, 1, 0, 1]]
: [[1, 0, 1, 0, 1], [0, 1, 0, 1, 0],[1, 0, 1, 0, 1]]
: 把一个变成转置矩阵
: 3*1和1*3矩阵
: 变成各个元素相乘的3*3矩阵
: https://i.imgur.com/5ptSPaZ.jpg
: 但是在numpy他好像把他看成3*5
: https://i.imgur.com/3qxpx4o.jpg
: 请问有什麽改法吗?
请试试看以下方法看合不合用。
=========================== 程式码分隔线 ====================================
import numpy as np
array_1 = np.array([[[0, 1, 0, 1, 0]], [[0, 0, 0, 0, 1]], [[0, 1, 1, 0, 1]]])
## ^ ^ ^ ^ ^ ^
## 在标注的地方各加上一个中括号。
array_2 = np.array([[[1, 0, 1, 0, 1]], [[0, 1, 0, 1, 0]], [[1, 0, 1, 0, 1]]])
## ^ ^ ^ ^ ^ ^
## 在标注的地方各加上一个中括号。
## 检查各元素,可以发现变成一个三列一行的矩阵,
## 每一个元素是有五个数字的array
print(array_1[0][0],"\n")
print(array_1[1][0],"\n")
print(array_1[2][0],"\n")
## 测试 reshape 後的矩阵。
## 检查各元素,可以发现变成一个一列三行的矩阵,
## 每一个元素是有五个数字的array
arr =array_1.reshape(1,3,5)
print(arr[0][0],"\n")
print(arr[0][1],"\n")
print(arr[0][2],"\n")
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.135.245.246 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1591178788.A.03F.html
1F:推 s90104123: 刚刚测试有成功了 感谢 06/03 19:10
2F:→ skyconquer: 不会 :) 06/03 20:39