我有一个涉及非常稀疏的大n维数组的应用程序。 scipy.sparse
有一个有用的“矢量化获取和设置”功能,因此可以使用Cython快速填充稀疏矩阵。
当然,scipy包无法处理n维。我发现两个能够在Python中处理n维稀疏数组的软件包sparray
和ndsparse
。但似乎都没有向量化的获取和设置功能。
因此我需要:
- 具有矢量化get和set的n维数组的Python软件包或
- 适用于稀疏数组的C库,我可以轻松地通过Cython访问或
- 一些“自己动手”的选择,我想这需要一个C等效物来替代Python字典
对于我的目的,我认为将n维坐标映射回1或2维可能会起作用。更好的方法是拥有一个相当于Python字典的dict等效物,我可以在Cython循环内快速访问。我假设这排除了Python dict
。
请问是否有人能给我一个如何在Cython中使用c++ map对象的示例?