Narzędzie do konwersji kodu MATLAB do Pythona [zamknięte]

Mam kilka kodu MATLAB z mojej pracy MS, który teraz chcę przekonwertować do Pythona (za pomocą numpy / scipy i matplotlib) i rozpowszechniać jako open-source. Znam podobieństwo między bibliotekami naukowymi MATLAB i Python, a ręczne ich konwersja nie potrwa dłużej niż dwa tygodnie (pod warunkiem, że codziennie będę nad tym pracował przez jakiś czas). Zastanawiałem się, czy jest już dostępne jakieś narzędzie, które może wykonać konwersję.

Author: Tshepang, 2012-03-23

4 answers

Istnieje kilka alternatywnych narzędzi do konwersji kodu Matlab na kod Pythona (jeszcze nie testowany):

Również dla zainteresowanych interfejs między dwoma językami i Nie konwersja:

  • pymatlab: komunikowanie się z Pythona poprzez wysyłanie danych do przestrzeni roboczej MATLAB, operowanie na nich za pomocą skryptów i pobieranie wynikowych danych
  • Python-Matlab tunele czasoprzestrzenne : oba kierunki interakcji obsługiwane
  • Python-Matlab bridge: użyj Matlab z wewnątrz Pythona, oferuje matlab_magic dla iPython, aby wykonać normalny kod matlab z wewnątrz ipython
  • PyMat : sterowanie sesją Matlab z Pythona
  • pymat2: kontynuacja pozornie porzuconego Pymata.
  • mlabwrap, mlab-purepy: sprawić, by Matlab wyglądał jak Biblioteka Pythona (oparta na Pymacie)
  • oct2py: Uruchamianie poleceń GNU Octave z poziomu Pythona
  • pymex: osadza Interpreter Pythona w Matlab, również na File Exchange
  • matpy: Access MATLAB na różne sposoby: tworzenie zmiennych, dostęp .pliki mat, bezpośredni interfejs do silnika MATLAB (wymaga zainstalowania MATLAB).
  • MatPy : pakiet Pythona do numerycznej algebry liniowej i wykresów z interfejsem podobnym do Matlaba

Btw przydałoby się poszukać tutaj innych porad dotyczących migracji:

W innej nucie, choć w ogóle nie jestem fanem fortran, dla ludzi, którzy mogą znajdź to przydatne jest:

 115
Author: Ioannis Filippidis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-08-17 08:59:40

Jest OMPC, "Open-source Matlab-to-Python Compiler", wspomniany przez @IoannisFilippidis w jego odpowiedzi, -- haven ' t used it though.

 10
Author: denis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:03:05

Istnieje również oct2py, które może wywołać .pliki m w Pythonie

Https://pypi.python.org/pypi/oct2py

Wymaga GNU Octave, który jest wysoce kompatybilny z MATLABEM.

Https://www.gnu.org/software/octave/

 4
Author: norweeg,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-02-17 23:33:40

Nie znam żadnych automatycznych narzędzi, ale ogólny przewodnik jest dostępny tutaj: http://www.scipy.org/NumPy_for_Matlab_Users

Ogólnie przyjrzałbym się dokumentacji numpy, która jest bardzo dobra. Niektóre nazwy metod mapują się bezpośrednio, chociaż istnieją różnice. Nie zajęło mi dużo czasu przejście z Matlaba na Numpy, kiedy zrobiłem skok kilka lat temu.

 -1
Author: JoshAdel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-03-23 19:32:52