2016-07-29 28 views
0

我有一個1D numpy觀察數組示例[a,b,c,d]。 a,b,c,d取連續值,每個值都屬於不同的有限域。範例從-2開始。到2.等數組映射到離散化後的唯一鍵

我的目標是映射任何這樣的觀察到一個單一的數字。 藉助於離散化,例子[1,2,-3,4]和[1,2,-2.7,4]被映射到相同的數字x。 還應將[1 0 0 1]和[0 1 1 0]映射到單獨的唯一數字!

我將如何去與numpy這個。

+0

能否請你分享什麼是預期輸出[1, 2,-3,4]? – Mahdi

回答

0

如果你的離散化進程正在最接近的整數(向負無窮大,而不是向零取整),那麼你可以做這樣的事情

>>> a = np.array([-1.6, -0.5, 1.2, 2.2]) 
>>> (np.floor(a + 0.5) * [1000, 100, 10, 1]).sum() 
-1988.0