У меня есть приложение, которое включает большие n-мерные массивы, которые очень скудны. scipy.sparse
имеет полезную функцию "векторизации получения и настройки", так что Cython можно использовать для быстрого заполнения разреженной матрицы.
Конечно, пакет scipy не может обрабатывать n-размеры. Есть два пакета, которые я нашел, которые делают n-мерные разреженные массивы в python sparray
и ndsparse
. Однако, похоже, он не имеет векторизованной функции получения и настройки.
Мне тоже нужно:
- пакет python для n-мерных массивов с векторизованным get и set или
- библиотека c для разреженных массивов, с которыми я могу легко получить доступ с помощью Cython или
- некоторый вариант "сворачивать свой собственный", который, как я полагаю, потребует c-эквивалент питона python
Для моей цели я думаю, что отображение n-мерных координат назад в 1 или два измерения может работать. Было бы лучше, хотя бы иметь эквивалент dict, который я могу получить быстро внутри цикла Cython. Я предполагаю, что это исключает python dict
.
Интересно, может ли кто-нибудь дать мне пример того, как использовать объект карты С++ из Cython?