Ho un mucchio di codice MATLAB dalla mia tesi di laurea che ora voglio convertire in Python (usando numpy/scipy e matplotlib) e distribuire come open-source. Conosco la somiglianza tra le librerie scientifiche MATLAB e Python e convertirle manualmente non sarà più di una quindicina (a condizione che ci lavori ogni giorno per un po 'di tempo). Mi stavo chiedendo se ci fosse già qualche strumento disponibile che possa fare la conversione.Uno strumento per convertire il codice MATLAB in Python
risposta
Ci sono diversi strumenti alternativi per la conversione del codice Matlab per codice Python (non ancora testato):
- Small Matlab to Python compiler: convertire il codice Matlab per codice Python, anche sviluppate qui: [email protected]
- LiberMate: tradurre da Matlab in Python e SciPy (richiede Python 2, ultimo aggiornamento 4 anni fa).
- OMPC: Matlab per Python (un po 'obsolete)
Inoltre, per coloro che sono interessati in un'interfaccia tra le due lingue e non conversione:
pymatlab
: comunicare da Python con l'invio dati nello spazio di lavoro MATLAB, operando su di essi con script e tirando indietro i dati risultanti- Python-Matlab wormholes: entrambe le direzioni di interazione supportate
- Python-Matlab bridge: utilizzare Matlab dall'interno di Python, offre matlab_magic per ipython, per eseguire il normale codice MATLAB dall'interno ipython
- PyMat: Controllo Matlab sessione dal Python
pymat2
: continuazione della PyMat apparentemente abbandonata.mlabwrap
, mlabwrap-purepy: rendere Matlab sembrare libreria Python (sulla base di PyMat)oct2py
: eseguire i comandi GNU Octave dall'interno Pythonpymex
: incorpora l'interprete Python in Matlab, anche File Exchangematpy
: Accedi a MATLAB in vari modi: crea variabili, accedi ai file .mat, interfaccia diretta al motore MATLAB (richiede che MATLAB sia installato).- MatPy: package Python per l'algebra lineare numerica e tramando con un MatLab-come l'interfaccia
Btw potrebbe essere utile guardare qui per altri suggerimenti di migrazione:
Su una nota diversa, anche se non sono affatto una fan fortran
, per le persone che potrebbero trovare utile c'è:
Qualcuno ha un commento su quale di questi funziona meglio o quali casi falliscono? – Chogg
Non li ho ancora testati, ma sembra che lo smop abbia l'unica differenza di essere mantenuto attivamente, dallo sviluppatore originale, su github, con una suite di test. –
non so di eventuali strumenti automatici, ma una guida generale è disponibile qui: http://www.scipy.org/NumPy_for_Matlab_Users
In generale vorrei solo osservare la documentazione NumPy che è molto buono. Alcuni dei nomi dei metodi mappano direttamente, sebbene ci siano differenze. Non mi ci è voluto molto per passare da Matlab a Numpy quando ho fatto il salto un paio di anni fa.
C'è OMPC, "Compilatore Matlab-a-Python open source", citato da @IoannisFilippidis in his answer, - non l'ho usato comunque.
Ho provato, troppi comandi non definiti (copiati da MATLAB) –
C'è anche oct2py che può chiamare .m file all'interno di pitone
https://pypi.python.org/pypi/oct2py
Richiede GNU Octave, che è altamente compatibile con MATLAB.
- 1. Uno strumento tasklist per matlab
- 2. Strumento per convertire java in codice C#
- 3. Esiste uno strumento per convertire il codice ANSI C in C#?
- 4. Uno strumento per convertire JSON in C struct?
- 5. fsolve su Python (conversione del codice MATLAB per codice Python)
- 6. Uno strumento per un'ispezione del codice IL facile
- 7. C'è qualche strumento per tradurre il codice Lisp in Python?
- 8. Abbiamo uno strumento per convertire il layout xml di Android in file .java?
- 9. Qualche strumento per convertire il database SQLite in SQL Server?
- 10. Metodi per convertire le formule matematiche in codice in Matlab, C++, ecc.?
- 11. Matlab come strumento di debug per Julia
- 12. Strumento per spiegare il codice C
- 13. Strumento per convertire ASP in PHP
- 14. Strumento per convertire (tradurre) C per andare?
- 15. Strumento online per convertire il formato oggetto JSON in C#
- 16. C'è uno strumento come mechanize per Android?
- 17. Come convertire il codice C# in uno script PowerShell?
- 18. Strumento per far rispettare lo stile/standard del codice Python
- 19. Convertire il codice C99 in C89
- 20. Strumento/gemma per trovare il codice commentato
- 21. Come convertire il file codificato personalizzato in UTF-8 (in Java o con uno strumento dedicato)
- 22. c'è uno strumento per mettere in ordine automaticamente il codice F #
- 23. Ottimo strumento per convertire query mssql in query mysql
- 24. Esiste uno strumento per convertire i report XML Emma in formato XML Cobertura?
- 25. Comando equavelent python per quantile in MATLAB
- 26. Esiste uno strumento come doxygen per XSLT?
- 27. È disponibile uno strumento per il diagramma di flusso?
- 28. MATLAB ind2sub equivalente in Python
- 29. Come convertire il codice ByteCode in codice macchina
- 30. Strumento per la gestione automatica delle funzioni in Matlab
un'altra possibilità è quella di rilasciare il codice sorgente pura e provarlo in ottava (www.gnu.org/software/octave), che ha il 99% MATLAB competability. – Oz123
@Denis: dovrebbe essere una risposta – endolith
@josliber: possiamo spostare questa domanda su http://softwarerecs.stackexchange.com in modo che possa essere riaperta? –