#python #numpy #matlab #indexing #numpy-ndarray
Вопрос:
У меня есть код Matlab, который я должен преобразовать в python. Есть одна операция, с которой я сейчас борюсь. У меня есть массив Matlab «edof», который имеет размеры 262144 x 24. У меня есть второй массив «dofVector», который имеет размеры 823875 x 1. Выполняемая операция заключается в:
edof = dofVector(edof);
который обновляет мою переменную, и я получаю результирующие размеры переменной «edof» такими же, как и раньше, т. е. 262144 x 24, но значения изменены.
Я пытаюсь преобразовать эту строку кода в numpy, но не смог этого сделать.
edof = dofVector[edof]
Кто-нибудь может мне здесь помочь, пожалуйста?
Я не включаю здесь описание массивов, поскольку это сугубо техническое и специфичное для моей области.
Спасибо!
Ответ №1:
Индексы Numpy основаны на нуле. Индексы MATLAB основаны на одном. Поэтому, если edof
MATLAB и Python идентичны до этого шага, вы захотите сделать
edof = dofVector[edof - 1]