NumCppC++ 版本的 Numpy
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 文档
评论
