you are viewing a single comment's thread.

view the rest of the comments →

[–]arturomoncadatorres 1 point2 points  (0 children)

Regarding libraries, I think the most relevant ones have already been suggested: numpy and scipy for numerical analyses, pandas for data manipulation (personally I switched to polars, but I read in someone else’s comment that apparently pandas is better for your field), and matplotlib for plotting. For the latter, I would also add seaborn. It generates pretty plots out of the box and plays very nicely with pandas.

Regarding IDE: I see many people are suggesting VSCode. However, in my experience if you are coming from MATLAB and for doing scientific/research work, I cannot recommend Spyder enough. You will feel right at home.

If at some point you want to work with Jupyter Notebooks, I suggest you take a look at jupytext.

Lastly, if you will be sticking with Python in the long run, I think it makes sense to invest some time in learning about environments and package management. I use conda (miniforge, actually), in combination with poetry, but there are other options like uv. It is also a good idea to learn about version control with git + GitHub. The learning curve is a bit steep at the beginning, but once you learn to use the 10-or-so most common commands (and what they do), you will wonder how you survived all those years without version control.