NumCpp 是一个高性能的数学计算 C++ 库,它提供了一个简单的 Numpy/Matlab 类似的接口。

NumCpp中 的主要数据结构是 NdArray 。它本质上是一个 2D 数组类,一维数组实现为1xN数组。还有一个 DataCube 类作为便利容器提供,用于存储2D数组 NdArray ,但它通过简单容器的用途有限。

NumCpp 提供了许多初始化函数,它们返回 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>()

nc::NdArray<double>(3, 4) a = nc::constants::nan

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