<story><title>One Page R: A Survival Guide to Data Science with R</title><url>http://onepager.togaware.com/</url></story><parent_chain><item><author>pvnick</author><text>Does anybody with experience doing analysis in both R and python have any insight as to whether one can replace the other, or do they significantly supplement each other? I get the impression that python with pandas&amp;#x2F;scikit-learn&amp;#x2F;scipy&amp;#x2F;numpy&amp;#x2F;matplotlib can be used almost completely in lieu of both R and matlab, but I don&amp;#x27;t feel that I have enough experience in R or matlab to make such a claim.</text></item></parent_chain><comment><author>chubot</author><text>I am a pretty die hard Python person, having used it as my main language for over 10 years.  I think there is a tendency to make that claim because we want it to be true :)&lt;p&gt;Python is such a nice language that we want to use it for everything.  But I found I became more productive once I got out of that mindset.  Right now, I have a very multilingual workflow including Python, R, shell scripts, C++, and a handful of other DSLs (various sql dialects, html templating, etc.)&lt;p&gt;I feel like I am finally productive working with data; I was always astounded by how MUCH code you have to write to work with data.  There is a pretty big cost to learning all of that, and I won&amp;#x27;t lie and say I learned R quickly, but it was worth it.&lt;p&gt;I use Python to interface with MANY systems, often to generate cleanly formatted CSV files.  R reads the CSV files and does data slicing and dicing (using the data.table package, an enhanced data frame).  And then ggplot2 for plotting.  And C++ for the big data stuff, and shell scripts to glue it all together (with concurrent processes, importantly).&lt;p&gt;I find that this Unix-style architecture is actually more maintainable in the long run.  Parts of your analysis and data cleaning become more modular and reusable.  There are a lot of reasons why a boatload of Python packages aren&amp;#x27;t very cleanly reusable.  You also end up with MUCH less code using the multi-language strategy vs. trying to do it all in one language (I&amp;#x27;ve seen people try to do that both with Python and R).&lt;p&gt;ggplot2 is unrivaled; Python and Julia people are busily trying to copy it.  Python and Julia are both also copying R&amp;#x27;s data frame structure.  The area is moving extremely quickly now, so I&amp;#x27;ll be interested to see what progress they make.  But there are actually areas where R the language is more suited to data analysis (has more of a Scheme core than Python, more appropriate data structures, lazy expression evaluation, etc.)&lt;p&gt;In the end I am using R for the same reason I chose to use Python over C&amp;#x2F;C++ -- because it enables you to write 5x less code (in the domain of data analysis, compared with Python).  And once you use other tools, you see Python&amp;#x27;s flaws, like bad package management (R&amp;#x27;s is actually better), and a relatively bad REPL.  And Python&amp;#x27;s C++-inspired class system is often a hindrance for data analysis; R is a more data-oriented language.&lt;p&gt;R definitely has its problems, including a lot of horrible R code out there.  But it also has a lot more books and so forth.  IMO data.table + ggplot2 alone make it worth it.  I recommend reading Hadley Wickam&amp;#x27;s papers on &amp;quot;tidy data&amp;quot; and the &amp;quot;split-apply-combine&amp;quot; style of analysis.  In that sense learning R actually helps you learn how to do data analysis properly.</text></comment>
<story><title>One Page R: A Survival Guide to Data Science with R</title><url>http://onepager.togaware.com/</url></story><parent_chain><item><author>pvnick</author><text>Does anybody with experience doing analysis in both R and python have any insight as to whether one can replace the other, or do they significantly supplement each other? I get the impression that python with pandas&amp;#x2F;scikit-learn&amp;#x2F;scipy&amp;#x2F;numpy&amp;#x2F;matplotlib can be used almost completely in lieu of both R and matlab, but I don&amp;#x27;t feel that I have enough experience in R or matlab to make such a claim.</text></item></parent_chain><comment><author>whyenot</author><text>It depends. R has many, many more packages and those packages tend to be more extensively peer-reviewed. If the sort of analysis you are doing wanders out of the mainstream, you are less likely having to code something up from scratch than is the case with python&amp;#x2F;*. I also find R is a lot more enjoyable to use interactively and for exploring data than python. On the other hand, python is fantastic for larger pieces of code, data wrangling, and any tasks where you can make use of python&amp;#x27;s massive number of (non-statistical) modules.</text></comment>