Репликация & # 39; режима Taint & # 39; от & # 39; Укрепить инструмент статической проверки & # 39; в Хаскеле

Простое решение без передачи данных файлом или внешними библиотеками.

У Numpy есть способ преобразования ndarrays в список, а типы данных Matlab могут быть определены из списков. Итак, когда можно преобразовать, как:

np_a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
mat_a = matlab.double(np_a.tolist())

От matlab до python требуется больше внимания. Нет встроенной функции для преобразования типа непосредственно в списки. Но мы можем получить доступ к необработанным данным, которые не сформированы, но понятны. Таким образом, мы используем reshape (для правильного форматирования) и transpose (из-за разных способов хранения данных MATLAB и numpy). Это очень важно подчеркнуть: протестируйте его в своем проекте, главным образом, если вы используете матрицы с более чем двумя измерениями. Он работает для MATLAB 2015a и 2 dims.

np_a = np.array(mat_a._data.tolist())
np_a = np_a.reshape(mat_a.size).transpose()
14
задан Deepend 22 May 2014 в 13:58
поделиться