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 文档