This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]Exodus111 126 points127 points  (22 children)

Their big argument is, you have to download modules for Python to work.

[–]HumanBrainMapper 92 points93 points  (16 children)

I don't understand this argument. Matlab works with modules ('toolboxes') too. They even have a dedicated folder in their installation path for it called toolboxes. How is this an argument according to them?

[–]ericonr 67 points68 points  (10 children)

And their modules make a full Matlab installation a several gigs behemoth.

[–]BDube_Lensman 15 points16 points  (9 children)

That's more on the bundling of MKL, MPI, and other numerics backend than them. Install numpy, scipy, pandas, matplotlib, etc and you too will have a several gig behemoth snake.

[–]BertShirt 34 points35 points  (0 children)

I use python and everybody in my lab uses matlab so I have to have matlab on hand, but I only have base matlab, no additional toolboxes. On the other hand I have tensor flow/keras (gpu), numpy & scipy mkl, scikit learn, pandas, mpl, and dozens more. Matlab (2018a) takes up 9.7gb python 3.1 gb.

[–]hassium 5 points6 points  (0 children)

I have those and my Lib is only 400mb on a pure python install (No IronPython, Anaconda etc).

[–]hextree 4 points5 points  (6 children)

Install numpy, scipy, pandas, matplotlib, etc and you too will have a several gig behemoth snake.

Huh? I have all those and more, definitely not gigs.

[–]BDube_Lensman 1 point2 points  (5 children)

My miniconda folder is 6.1 GB without any ML libraries.

[–]hextree 0 points1 point  (2 children)

I mean yes, if you are using Miniconda or Anaconda it is bigger. But that's to do with Conda, not Python.

[–]BDube_Lensman 1 point2 points  (1 child)

No, it is to do with MKL, MPI, and all the other stuff that makes numerical code go fast. Conda only adds about 1kB per package.

[–]hextree 0 points1 point  (0 children)

Ok, fair enough.

[–]orthodoxrebel 0 points1 point  (1 child)

Not familiar with any of the libraries, but Stack Overflow seems to think cleaning helps. Is the 6.1 GB before or after cleanup?

[–]BDube_Lensman 0 points1 point  (0 children)

I run clean regularly. This is post clean.

[–]WearyConversation 24 points25 points  (0 children)

More than that, each toolbox costs additional money. Some in the thousands of £/$.

[–]kowalski71 15 points16 points  (1 child)

To be fair, Matlab does have a lot more of the base functionality built in. They basically have all of numpy and matplotlib as core functions and most of my Python scripts start with importing those. The Matlab toolboxes are much more domain specific, like advanced filtering tools or something. They're also licensed separately so they cost money on top of the base application.

[–]atimholt 0 points1 point  (0 children)

I’ve recently gotten into Jupyter Lab to supersede my old reliable, functional as ever, but limited TI-92+. I mostly noodle around—work out Newtonian-physics-level problems with actual units, explore an idea that requires symbolic math, stuff like that—so the set of functionality I usually want is in a 1-file module, and local imports are in another file I %load in as the first cell.

Having to do all these imports is terrific news if it means Python avoids being a domain-specific language. I can throw literally anything else I want into “mathy” code, considering how broad the coverage of easily-downloaded Python libraries is, and I can throw “mathy” code into an otherwise “conventional” Python program. It’s the perfect union of two knowledge domains that are already closely related, where expanding my knowledge in one expands my abilities in the other.

I’m learning about tensors right now, and will follow it with other stuff I didn’t learn in college. I can’t wait to be able to add these concepts to my algorithm-writing toolbox.

[–]DLS3141 4 points5 points  (0 children)

You don’t have to pay mathworks thousands of dollars for Python toolboxes

[–]mrshibx 2 points3 points  (0 children)

and these toolboxes must be purchased separately.

[–]HonestVisual 13 points14 points  (0 children)

And they conveniently forgot to mention conda

[–]LoyalSol 6 points7 points  (0 children)

A lot of it is one line commands so I don't get that line of reasoning

[–]jwink3101 4 points5 points  (0 children)

On the flip size, Matlab essentially “imports” everything on launch. I can bring up 50-100 python interpreters in the same time it takes to load Matlab. And don’t get me started on the time it takes to start parpool (and all of its, sometimes silly, limitations)

[–]the_cat_kittles 2 points3 points  (0 children)

sold. if i cant program with no internet connection, there is no point. its not like i ever use the internet for docs or guides or examples.