NumCpp 是一個高性能的數學計算 C++ 庫,它提供了一個簡單的 Numpy/Matlab 類似的接口。
NumCpp中的主要數據結構是NdArray
。它本質上是一個 2D 數組類,一維數組實現為1xN數組。還有一個DataCube
類作為便利容器提供,用於存儲2D數組NdArray
,但它通過簡單容器的用途有限。
NumPy的 | NumCpp |
---|---|
a = np.array([[1, 2], [3, 4], [5, 6]]) |
nc::NdArray<int> a = { {1, 2}, {3, 4}, {5, 6} } |
a.reshape([2, 3]) |
a.reshape(2, 3) |
a.astype(np.double) |
a.astype<double>() |
NumCpp 提供了許多初始化函數,它們返回NdArray
。
NumPy的 | NumCpp |
---|---|
np.linspace(1, 10, 5) |
nc::linspace<dtype>(1, 10, 5) |
np.arange(3, 7) |
nc::arrange<dtype>(3, 7) |
np.eye(4) |
nc::eye<dtype>(4) |
np.zeros([3, 4]) |
nc::zeros<dtype>(3, 4) |
nc::NdArray<dtype>(3, 4) a = 0 |
|
np.ones([3, 4]) |
nc::ones<dtype>(3, 4) |
nc::NdArray<dtype>(3, 4) a = 1 |
|
np.nans([3, 4]) |
nc::nans<double>(3, 4) |
|
|
np.empty([3, 4]) |
nc::empty<dtype>(3, 4) |
nc::NdArray<dtype>(3, 4) a; |
更多關於 NumCpp 的使用方法,請訪問 NumCpp 文檔