691 karma · joined February 3, 2015
Harvard Data science class, in python: http://cs109.github.io/2014/
Python is also better than R for ad hoc statistical modeling and algorithim development (you can write python code on the order of C fast with numba) , general programming, scraping, natural language processing, agent based modeling etc.
Python is also better for GIS, optimization, symbolic math and larger datasets with blaze and dask and pyspark.
R right now is a bit better for visualization, reporting and exploratory data analysis (I think this will change soon though with Bokeh and blaze) and has many more esoteric stats packages.
With statsmodels, pymc3, pandas and scikitlearn etc you can probably do 98% of everything you need in python without needing to dip into the more esoteric packages of R (with some exceptions). For everything else, you can call R packages with Rpy2. With this you get all the advantages of working in one language (not spread too thin) and the advantages that python offers while leveraging R's wealth of packages.
The latter is a bit more difficult through python, but not as hard as trying to remember the syntax of and gluing together a two language workflow.
That is why I chose python... Also I can write excel addins with python (xlwings) instead of using VBA
The thing is, we still don't have the beautiful julia type system, multiple dispatch, macros, better syntax for technical computing easy distribution etc
When you say "flexibility to use whatever I wanted to do my work", do you mean data munging and manipulation or statistical modeling packages?
What walls and why did you switch? Did you find the shift in syntax and mindset difficult? Have you used rpy2?
There definitely seems to be more innovation in R world, but blaze, numba and bokeh have no R equal.
I wonder if this can help: http://nuitka.net/pages/overview.html?
Much easier and more robust than pip:
Currently supports both including multithreading. Its just he unified interface that is in the works.