Matlab在数据科学中的灭亡

意见 (Opinion)

My personal interest in Data Science spans back to 2011. I was learning more about Economies and wanted to experiment with some of the ‘classic’ theories and whilst many of them held ground, at a micro level, many were also purely fictitious. Many of the themes that you learn: on how savings and investments are directly related, or even on how Supply and Demand are directly related to price just didn’t hold true.

我个人对数据科学的兴趣可追溯到2011年。我正在学习更多关于经济的知识,并想尝试一些“经典”理论,尽管其中许多在微观上站稳了脚步,但许多理论也完全是虚构的。 您所学习的许多主题:关于储蓄和投资如何直接相关,甚至关于供求关系与价格直接相关的主题都不成立。

To be fully conclusive on my research though, I had to be sure that any conclusion I drew was purely unadulterated and spoke from the data. It’s all good and well that some notable academic from some notable University informs us about a theory, but is it actually true? Is it true everywhere?

但是,要完全确定我的研究结论,我必须确保我得出的任何结论都是纯正的,并且是从数据中得出的结论。 某著名大学的一些著名学者向我们介绍了一种理论,这一切都很好,但实际上是真的吗? 到处都是吗?

Collecting data wasn’t too hard but from there I had to teach myself programming. Python was free, easy to use, and the ‘new thing’ that people said to learn to ‘future proof’ my knowledge. However, after learning it and persuading a company to let me join their Graduate Scheme, I began to use Matlab at work.

收集数据并不难,但是我必须从那里自学编程。 Python是免费的,易于使用的,人们说要学会“证明未来”的“新事物”是我的知识。 但是,在学习并说服一家公司让我加入他们的研究生计划后,我开始在工作中使用Matlab

From here, I’ve always had this conflict where Matlab feels like a better language to work in but Python has always been my, you could say, ‘mother tongue’.

从这里开始,我总是遇到这样的冲突, Matlab感觉像是一种更好的语言,但是Python一直是我的母语(可以说)。

The following article will highlight why after almost 10 years of experience in both languages, I feel that Python absolutely dominates Matlab in Data Science and also, why new Data Scientists should focus on solely on Python.

下一篇文章将重点说明为什么在使用这两种语言近10年的经验之后,我感到Python在数据科学领域绝对统治了Matlab ,而且,为什么新的数据科学家应该只专注于Python

Python and Matlab are similar and different at the same time. Matlab was created as a private enterprise and as a closed form platform solution with a high price tag. On the other side, Python was created with ‘openness’ in mind to be easy and simple to use for all general tasks.

PythonMatlab相似又不同。 Matlab是作为一家私营企业和具有高价的封闭式平台解决方案而创建的。 另一方面,在创建Python时考虑到了“开放性”,以使其易于使用和简单地用于所有常规任务。

Matlab got a head start in the popularity contest as it was released in 1984 and despite me not being around back then, the various permutations and iterations of the language lent themselves well to the discipline of Mathematics. This is because vectors and multi-dimensional matrices are super simple to use in Matlab — a feature which only came in later at the time of Numpy (which was still kind of annoying) but Pandas has made using Python infinitely easier. Given that change, does my thesis hold true?

Matlab在1984年发布的人气竞赛中处于领先地位,尽管那时我还不在身边,但该语言的各种排列和迭代方式非常适合数学学科。 这是因为向量和多维矩阵在Matlab使用非常简单-该功能仅在Numpy出现时才出现(这仍然很烦人),但是Pandas Numpy简化了使用Python 。 有了这种改变,我的论文是否成立?

熊猫是Python开始超越Matlab的原因吗? (Was Pandas the reason why Python began to overtake Matlab?)

So we know that Pandas was first an internal library at AQR Capital and written my Wes McKinney and looking at Trends on Stack Overflow, we can see that from 2012 onwards, the percentage of questions with a Tag of Pandas began to increase where from 2015, there was a sharpe inflection point.

因此,我们知道Pandas首先是AQR Capital的内部图书馆,并写了我的Wes McKinney并研究了Stack Overflow的趋势,我们可以看到,从2012年开始,带有Pandas标签的问题所占的百分比开始从2015年开始增加,有一个尖锐的拐点。

Image for post

Now notice here that since 2013/2014, the number of questions for Python as a langauge began to increase as well. Makes sense right? Pandas is a subset of Python, so naturally, the two are related, however …

现在请注意,自2013/2014年以来,作为语言的Python的问题数量也开始增加。 有道理吧? 熊猫是Python的子集,所以自然地,两者是相关的,但是……

Image for post
source] ]

…since 2015, Matlab has been on a downward spiral. The proportion of questions that have a tag of Matlab has seriously been going down and why is that?

…自2015年以来,Matlab呈螺旋式下降。 带有Matlab标签的问题所占比例一直在严重下降,这是为什么呢?

Image for post
source] ]

Matlab昂贵且缺乏灵活性:学生负担不起 (Matlab is Expensive and Inflexible: students cannot afford it)

Being a closed platform where every new library requires you to pay for the inbuilt functions means that things can become very expensive very quickly.

作为一个封闭的平台,每个新库都需要您为内置功能付费,这意味着事情很快就会变得非常昂贵。

It’s pretty crazy but if you do practise Machine Learning in Matlab (as I have before) — you either have to shell out and buy a number of libraries (which have dependencies on each other), or you have to build everything for yourself from scratch.

这非常疯狂,但是如果您确实在Matlab中练习机器学习(就像我以前一样)–您要么必须掏空并购买大量的库(彼此依赖),要么必须从头开始为自己构建一切。

This isn’t a necessarily a problem for those in the industry with a big budget but if you’re playing with the latest deep neural network, or looking to create GPT-4, you’ll need to include several libraries and pay through the nose whereas in Python, you can use Tensorflow and Numpy for free.

对于预算较大的行业人士来说,这不一定是一个问题,但是如果您正在使用最新的深度神经网络,或者希望创建GPT-4,则需要包括多个库并通过鼻子,而在Python ,您可以免费使用TensorflowNumpy

Also assuming you want to put into production any code that you’ve built, be prepared to build some form of a Matlab Wrapper or be prepared to code the final version in a different language. And yes, I’ve actually had to do that.

同样,假设您想将已构建的任何代码投入生产,请准备构建某种形式的Matlab包装器,或准备使用其他语言编写最终版本。 是的,我实际上必须这样做。

Matlab and Java do work together but why bother learning two languages and building some weird symbiotic system when you can simply just learn Python and have an entire-tech stack in one language? It’s so much easier, so much more flexible and so much more cost effective.

Matlab和Java确实可以一起工作,但是当您只需要学习Python并用一种语言拥有整个技术栈时,为什么还要花时间学习两种语言并构建一些奇怪的共生系统呢? 它非常容易,灵活得多并且更具成本效益。

Image for post
Photo by Tim Mossholder on Unsplash
Tim MossholderUnsplash拍摄的照片

Matlab几乎没有在线支持 (Matlab has little online support)

Also if the cost isn’t enough to deter you, the amount of Online support in Matlab land is far lower than you expect. Matlab does deserve some respect in that it’s Help functionality is better than most languages and usually solves most of the problems that you face but if you require some additional help on the internet, Python has roughly 100x more questions on Stack Overflow than Matlab does. That’s a lot fewer people to help you out, and yes, I’ve been stuck with a question that no one could solve before.

同样,如果费用不足以阻止您,则Matlab领域的在线支持量远远低于您的预期。 Matlab确实值得尊重,因为它的“ Help功能比大多数语言要好,并且通常可以解决您面临的大多数问题,但是如果您需要互联网上的一些其他帮助,Python在堆栈溢出方面的问题比Matlab大约多100倍。 帮助您的人减少了很多,是的,我一直被困在一个没人能解决的问题上。

There’s no free lunch but for all the reasons above, the use case for Matlab in Statistics and Machine Learning has been far reduced since Python got good with Pandas. I could go on all day about how much more useful Python is than Matlab but I’ll save you all the ear-ache.

没有免费的午餐,但是由于上述所有原因,自从PythonPandas相处以来,统计和机器学习中Matlab的用例已大大减少。 我可能整天都在谈论PythonMatlab有用的多,但我会省掉所有的麻烦。

But at the same time, Python is free. It’s verbose and it has succeeded in many places where Matlab fell short. I thoroughly encourage all future Data Scientists or Statisticians to please let Python be your mother tongue.

但同时,Python是免费的。 它很冗长,并且在Matlab欠缺的许多地方都取得了成功。 我完全鼓励所有未来的数据科学家或统计学家让Python成为您的母语。

It’ll be the best decision you make.

这将是您做出的最佳决定。

Thanks for reading! If you have any messages, please let me know!

谢谢阅读! 如果您有任何留言,请告诉我!

Keep up to date with my latest articles here!

在这里了解我的最新文章!

翻译自: https://levelup.gitconnected.com/the-demise-of-matlab-in-data-science-bfb74e42dc8e

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值