NumCpp 是一个高性能的数学计算 C++ 库,它提供了一个简单的 Numpy/Matlab 类似的接口。
NumCpp中的主要数据结构是NdArray
。它本质上是一个 2D 数组类,一维数组实现为1xN数组。还有一个DataCube
类作为便利容器提供,用于存储2D数组NdArray
,但它通过简单容器的用途有限。
NumPy的 | NumCpp |
---|---|
a = np.array([[1, 2], [3, 4], [5, 6]]) | nc::NdArray |
a.reshape([2, 3]) | a.reshape(2, 3) |
a.astype(np.double) | a.astype |
NumCpp 提供了许多初始化函数,它们返回NdArray
。
NumPy的 | NumCpp |
---|---|
np.linspace(1, 10, 5) | nc::linspace |
np.arange(3, 7) | nc::arrange |
np.eye(4) | nc::eye |
np.zeros([3, 4]) | nc::zeros |
nc::NdArray | |
np.ones([3, 4]) | nc::ones |
nc::NdArray | |
np.nans([3, 4]) | nc::nans |
nc::NdArray