open-discussion
open-discussion > RE: Octave vs Matlab vs Pythonfor Neuroimaging research
Sep 17, 2018 07:09 PM | Arnaud Delorme
RE: Octave vs Matlab vs Pythonfor Neuroimaging research
Yes, I agree. There is a trend in imaging tool development to
migrate brain imaging tools to Python. Of course, Python (and the
numpy/scipy math packages built on python) would be an interesting
(and free) alternative to using Matlab. However, irrespective of
what Python enthusiasts might claim, Python remains a programming
language designed for programmers. For example,
Arno
- It is hard to understand for novices why a n-size vector should be indexed beginning at 0 and ending at n-1 (in Matlab and R, vectors begin at position 1 and end at n).
- Code indentation is a nice feature of python. However, this style does not come naturally to the novice programmer. It also makes copying and pasting code between file sources and the command line interface problematic (since a snippet of code will most likely have unwanted indentation when copied to the python command line).
- The closest alternative to the Matlab interactive interface is the Jupyter notebook environment. Yet the graphical capabilities of Jupyter notebook are very limited (it is hard to manipulate figures, impossible to zoom, etc...).
- Python is much more object-oriented than Matlab, sometimes requiring users to understand object-oriented concepts when calling functions.
- Python usually requires the user to install multiple external libraries; this can be tedious and does not come naturally to novices.
- And of course, version problems: python versions 2.7 and 3.3 are not fully compatible, leading to all kinds of unexpected problems that can slow a novice programmer down terribly.
Arno
Threaded View
Title | Author | Date |
---|---|---|
Arnaud Delorme | Sep 10, 2018 | |
Matthew Brett | Sep 10, 2018 | |
Arnaud Delorme | Sep 17, 2018 | |
Troy Smith | Sep 18, 2018 | |
Matthew Brett | Sep 18, 2018 | |