Пакет Python из библиотеки Compiler: Matlab Runtime Ошибка: индекс превышает размеры матрицы - PullRequest
0 голосов
/ 03 сентября 2018

У меня есть функция в Matlab. Я создал пакет Python для использования в моем коде Python. Все идет нормально. Когда я вызываю функцию в python, я получаю сообщение:

MatlabRuntimeError: Произошла ошибка при оценке результата от функции. Подробности: Файл C: \ Users \ Roberto \ AppData \ Local \ Temp \ Guilherme \ mcrCache9.0.1 \ classi4 \ classificado \ contagemWGS84.m, строка 59, в contagemWGS84 Индекс превышает размеры матрицы.

когда я иду на строку 59 моего кода:

plantas(1) = dados{1}(1);  %line 59
plantas(1).Diameter = ...
    2*sqrt((dados{1}(1).Area*res^2)/pi) + 2*step_erode(1)*res;
for i=1:length(dados)
...
...
...

где dados - это структура 8x1, dados {1} - это структура 99x1, а dados {1} (1) - это структурная матрица 1x1 и числовые поля. Когда я запускаю точно такой же код прямо в Matlab, он работает без проблем. Когда я бегу в Python, я получаю эту ошибку.

Я использую Python 2.7 и Matlab R2016a. Пожалуйста, помогите.

1 Ответ

0 голосов
/ 03 сентября 2018

Массивы Python (и большинство из них) имеют индекс ноль , поэтому при доступе к memeber [1] [1] матрицы 1x1 запрашивается столбец second секунды ряд.

...