我有一個n行大小爲3的numpy數組A.每行由三個整數組成,每個整數指向numpy數組內的另一個位置。例如,如果我要使用N[4]
表示的行,我使用N[N[4]]
。目測:numpy數組中的奇怪賦值
N = np.array([[2, 3, 6], [12, 6, 9], [3, 10, 7], [8, 5, 6], [3, 1, 0] ... ])
N[4] = [3, 1 ,0]
N[N[4]] = [[8, 5, 6]
[12, 6, 9]
[2, 3, 6]]
我建立修飾N A功能,並且我需要修改N [N [X]]對於一些指定的x,它是(在實施例4)的參數也。我想改變所有的6子數組中的另一個號碼(假設0),所以我用numpy.where找到索引,這是
where_is_6 = np.where(N[N[4]] == 6)
現在,如果我直接替換像N[N[4]][where_is_6] = 0
沒有更改。如果我使用以前的參考像var = N[N[4]]
然後var[where_is_6]
更改已完成,但在本地對該功能,並且N不會全局更改。在這種情況下我能做什麼?或者我做錯了什麼?
另一個索引,索引將不會與您已經定義列表'N'的方式工作。你需要首先將N轉換爲'numpy.array()'。 – 2014-09-10 21:45:43
我說這是一個numpy數組,代碼雖然沒有反映出來,現在正在編輯... – 2014-09-10 21:46:26