1 回答

TA貢獻1921條經驗 獲得超9個贊
您可能應該只安裝適當版本的 Python 并numpy在嘗試這樣的轉換時。
通過在 CLI 上進行幾行簡單的測試,您就可以回答自己的問題:
>>> import numpy as np
>>> np.random.rand(1, 2)
array([[0.08239857, 0.15732393]])
>>> x = np.random.rand(1, 2)
>>> x
array([[0.08155715, 0.57869165]])
>>> x - .5
array([[-0.41844285, 0.07869165]])
所以,是的——該numpy.ndarray類型定義了一個減法操作,當以數字作為第二個操作數并以數組作為第一個操作數時,從數組的每個元素中減去該數字。
對于除法,類似地:
>>> x *= 10
>>> x
array([[0.81557146, 5.78691654]])
>>> x /= 10
>>> x
array([[0.08155715, 0.57869165]])
不同之處在于,它/會返回一個新的結果數組 (in x / 10),而將/=結果分配給x,覆蓋其在 中的值x /= 10。
最后一個例子比較復雜,但非常典型地numpy說明了庫的實現方式。類似于和-被/=分發的操作,對數組應用比較會分發它并返回一個布爾值數組,然后可以將其用作“索引”以準確選擇布爾值數組所對應的數組值是True。
0然后,在您給出的示例中,它會繼續將這些選定的值準確設置為。
詢問如何用 JavaScript 編寫這些操作只是要求 SO 為您編寫代碼——既然您了解會發生什么,您應該嘗試在 JavaScript 中實現相同的邏輯。如果遇到您不理解的特定問題,您可以針對這些問題提出單獨的問題。
添加回答
舉報