說我有以下陣列j:
[[1, 2, 3, 4, 5],
[7, 7, 7, 6, 4],
[1, 1, 2, 0, 0]]
我怎樣才能得到 2x2 的子陣列,所以子陣列將是:
[[1, 2],
[7, 7],]
直覺上我認為j[0:2][0:2]會做的伎倆,但我得到:
[[1, 2, 3, 4, 5], [7, 7, 7, 6, 4]]
uj5u.com熱心網友回復:
您需要從每一行中明確說出您想要的內容:
[r[0:2] for r in j[0:2]]
uj5u.com熱心網友回復:
在 numpy 你可以這樣做:
import numpy as np
j = np.array([[1, 2, 3, 4, 5],
[7, 7, 7, 6, 4],
[1, 1, 2, 0, 0]])
j[:2, :2]
輸出:
>>
[[1 2]
[7 7]]
uj5u.com熱心網友回復:
你也可以這樣做:
[j[i][:2] for i in range(2)]
[[1, 2],
[7, 7]]
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/481223.html
上一篇:可擴展的匯入范圍
