[問題] Numpy shape問題

看板Python作者 (也許當時忙著微笑和哭泣)時間5年前 (2020/06/03 15:34), 5年前編輯推噓5(5011)
留言16則, 4人參與, 5年前最新討論串1/2 (看更多)
我有兩個都是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
請問有什麼改法嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.141.63.209 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1591169676.A.005.html ※ 編輯: s90104123 (223.141.63.209 臺灣), 06/03/2020 15:36:16

06/03 16:24, 5年前 , 1F
array_1.shape 跟 array_2.shape 都給出 (3,5) 結果
06/03 16:24, 1F

06/03 16:26, 5年前 , 2F
np.inner(a,b)
06/03 16:26, 2F

06/03 16:27, 5年前 , 3F
這樣看來Python把它們視為有3個row跟5個column的矩陣
06/03 16:27, 3F

06/03 16:28, 5年前 , 4F
錯誤訊息是因為"array_1 = array_1.reshape(
06/03 16:28, 4F

06/03 16:29, 5年前 , 5F
array_1.shape[0],1)"這行,改成array_1.reshape(5,3)
06/03 16:29, 5F

06/03 16:30, 5年前 , 6F
可過,但不是你要的。
06/03 16:30, 6F

06/03 16:34, 5年前 , 7F
對 能否讓兩個array各自的shape從(3,5)變成(3,1)呢?
06/03 16:34, 7F

06/03 16:36, 5年前 , 8F
請問您最後的結果是要一個3*3矩陣,元素都是內積嗎?
06/03 16:36, 8F

06/03 16:42, 5年前 , 9F
像是左下角 10101乘以01010 會是[0*1,1*0,0*1,1*0,0*1]
06/03 16:42, 9F

06/03 16:42, 5年前 , 10F
謝謝
06/03 16:42, 10F

06/03 16:42, 5年前 , 11F
如果是的話,可以用這個方式,看看結果如何:
06/03 16:42, 11F

06/03 16:43, 5年前 , 12F
喔喔,我再想一下,我以為元素都是純量。
06/03 16:43, 12F

06/03 18:10, 5年前 , 13F
array2.reshape成(5, 3),然後np.dot(array1, array2
06/03 18:10, 13F

06/03 18:10, 5年前 , 14F
),就是(3, 3)的答案了吧?
06/03 18:10, 14F

06/03 18:15, 5年前 , 15F
沒看到回應,那你輸入的兩個array改成三維的如何?
06/03 18:15, 15F

06/03 19:25, 5年前 , 16F
感謝 三維解決了
06/03 19:25, 16F
文章代碼(AID): #1UrrAC05 (Python)
討論串 (同標題文章)
文章代碼(AID): #1UrrAC05 (Python)