![]() Great analysis Alfonso, but still with a controversial answer. And, it is fine Python, being a multi-purpose language, has greatly been extended to serve as the data science tool of choice. You can do prototyping with any of them but still R gives you that sort of solid and reproducible response that Python can hardly scratch. You have to consider the investment in time because R takes much, much longer to master. But the yield feel much greater when developing with R. Summarizing, R is an exceptional tool for data science and machine learning projects. S3 and S4 work radically different than Java and Python classes the closest relative would be R6. The difference with other languages (I have used classes in Java and Python), is that in R the class works underneath the function. There are more but these four comes quickly in my mind. You may not want to believe this but there are at least four class frameworks in R: S3, S4, R6, RC. Opposing this view, the world in R is different: the function is a first class citizen in the R world. Still, if you want to learn classes and Object Oriented Programming, I would recommend doing it with Python easiest in the world. Probably, because of the way Python's idea was sold. Classes have been used to an abuse in Python, and sometime with no reason. ![]() This is one of the things that makes R so different than Python. Of course, this comes with a set of basic rules on plotting: cannot use multiple y-axis avoid pie-charts and bars don't abuse of 3D, or avoid it at all start plots at zero unless you have a good reason and couple more. On the side of R, I haven't been able yet to exhaust what seems to be an infinite pool of graphics functions of base-graphics and ggplot2 and its offspring. I used matplotlib quite a lot but everything that is non-standard has to be created from scratch. Say what you want about matplotlib but it will never be that close to the base graphics or R or ggplot2, for that matter. And the packages offspring give birth to even better packages. Many, many high quality packages have been built over the solid foundation of existing libraries. This is a consequence of the point above. I think it is the quality of the documentation of the functions what makes R so strong and expandable. Yes, there are more than 11,000 packages in CRAN but that is not the point. ![]() They will not allow a package that doesn’t come with full documentation. CRAN (the Comprehensive R Archive Network) has a high bar if you want to publish a package. Difficult to believe that with four panes you can do so much stuff. Again, RStudio makes the grade for coming out with this simple, and at the same time, ever-expanding platform for development.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |