Can Matlab become a tool for in-depth learning of data mining compared to Python?

Source: Internet
Author: User
More familiar with Matlab, use it relatively handy, feel Shffield Genetic algorithm Toolbox and Neural Network toolbox are very useful, and simple programming, debugging program is also easy, Python only learned some foundation, want to proficiency to MATLAB that degree still need a period of time, may be MATLAB spoiled, always feel python all kinds of uncomfortable ... Questions come, if you get rid of Python only with MATLAB can learn the knowledge of data mining, in the future will not encounter bottlenecks, the specific may encounter what practical problems? By the way, it is recommended to use MATLAB and Python for data mining, thank you

Reply content:

Don't tease, dig deeper into data mining ... With what different, not to learn more about Python or in-depth study of MATLAB ... As for the previous answer to what memory problems ah, if your data volume to the platform bottleneck, then you are using C is still not enough and then eat virtual storage ah. On the hardware ah ... [Natural MATLAB has an open memory limit lululululu, natural matlab itself software memory is also higher than Python to know where to go, but Matlab is also easy to write up not know how much, how many functions do not have a messy tune to adjust to the].

So all the problems of the tool is not meaningful, in fact, which is familiar with which first, do not because of grammar or something that hinders your knowledge of science and culture, if you are familiar with, anyway, I just look at the mood to see the cost of change, if you are not familiar with, then you should find your familiar, R also become AH. [How much I don't like R] ...

Half-answer half-spit groove, not folded.

Cough .... Really, let's use Python.

Before I used the most skilled language is MATLAB, indeed, use it to call a cool AH. When I first saw Python, I thought it was just a waste of time with MATLAB.

But...

Industry does not ...

Into Ali internship, found that the use of MATLAB, are exclusively Python Dafa.

I said I used Matlab, and then the red fruit of the taunt.

It was uncomfortable for a while to change Python, but now Python has become my preferred language.


Data mining This kind of thing, like a lot of knowledge to show Ah, the data ah what the work, MATLAB is difficult to complete.

As a mature programming language with a rich and comprehensive library of classes, Python is indeed more capable of ' in-depth ' learning requirements.

I think the biggest problem of MATLAB is: As a language, it is not expressive enough .

MATLAB without pointers and references is a big problem

In addition, although it also provides poor object-oriented features .... But it's really too hard to use.

A lot of times, some slightly more complex data structure, the implementation of Python is very easy, but with Matlab in the Pit of God.


In general, this is probably the case:

1. Industry needs: Python end-of-the-bomb Matlab

2. Feature richness: Python end-Blast matlab

3. Practicality: Python end-blast matlab

4. Cost: Python finished with matlab

5. Development agility: Matlab slightly superior

6. Visual effects, debug, etc.: Matlab excellent


So there's no question of choosing Python. Of course, Matlab I will not throw away, for algorithm design and validation, and need to visualize the work, MATLAB is still the most handy tool. But the development of serious, or use Python bar.

Take a look at the following table:
1. "Sogou Recruitment" business Search department-data Mining Research and development engineer
-Familiar with Linux platform, Shell programming, familiar with Python/perl scripting language

2. "Baidu internal push" Baidu Music senior data analyst
-Ability to work in unix/linux environment, can use Shell/python and other scripting languages first

3. "Ali" Beijing urgent recruit data development/data mining expert
-Proficient in Java or Python, with concurrent applications or distributed application software development experience is preferred

4. "Sunshine Insurance Group Recruitment" Big Data analysis
-Proficient in using one of the Java, C + +, Python languages;

Dry It!
my answer only represents my position at the moment, and it has nothing to do with the language itself.
if hard to recommend an "in-depth" data mining language,
Well, the R language seems to be called the language of the statisticians, and data mining is a large chunk of the statistical category.
for reference only. Academia in the use of MATLAB and Python bar, industry or C or Java comparison is not very clear MATLAB and Python applications for data mining in terms of the books.

But I recommend Harvard CS109 this course. / http cs109.github.io/2014/ 。 It will introduce a set of Python-based machine learning tools, very useful! It's not a problem to do ml with python just by doing all the work in it. Was invited to answer this ... In fact, I do not have a lot of data mining, but since and machine learning almost I also give a try:
First of all on the efficiency of MATLAB and Python, I personally feel that is not a problem. I have not seen doing matrix operations faster than MATLAB, but the writing program is not good enough to write a few for the word matlab may also become very slow. Before someone said that 1.3G csv import matlab is hanging, this estimate can only occur when the GUI directly point to import the case.
Secondly, the choice of which language to start depends mainly on the number of packages, rather than the very general "the language is not good". For example, I have done some visual things before, certainly need to use MATLAB, but now began to learn some deep learning things, then switch to Python. The reason is that MATLAB for the interface of the image is very convenient, and there are a variety of mature algorithms can be used, and now deep learning mainstream framework of the interface are Python.
Finally, I think you should not consider "what language should I use to learn data mining" but "what language should I do this project?" In order to answer this question, I used MATLAB test a bit ~
First import data, 1.3G csv Comma separated ~
When I import the data, the computer hangs T T. It's an estimated memory overflow ...
I think it is a smooth import, do the neural network when the computer will hang ...
And with Python, it went well ... So, if the amount of data is too large, matlab estimate hold ... This semester do natural language processing, with Python, fast and convenient, matlab I have not used, but after all, mathematical computing ability is better. However, it is recommended to do the PY, universal language, and more practical. With Python machine learning book There is a "machine learning combat" is very good, from the principle to the example to achieve, is simply God book. MATLAB is suitable for learning and research, the practical problem is that in the business sector can not find a job

" Tools for learning data mining "

The master is also very clear that this is just a learning tool, that familiar with which is good.


If you want to do production tools, first think about the value of their own creation can exceed the genuine licensing fees.

  • Contact Us

    The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

    If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.