R vs Python for Data Analysis 
Possible Duplicate:
Python as a statistics workbench 

I am just starting out with data analysis and machine learning. From the books that I am reading/have read Python and R seem to be the best options for me.
I want to know (in a general way) the pro's and con's of each, or if I should perhaps use both.
Up until now I have been learning C# but have taught myself Python to a competent level. What interests me is programming and finding solutions. I want to work on new thing where possible.
Any help would be greatly appreciated.
 A: A good workman has several tools in his toolbox!
That said, do you see a distinction between C# and Python that adds to your toolbox?
R gives you access to thousands of statistical routines and techniques, plus great graphics. And it's a standard in the statistical world. (To be honest, I've noticed more Matlab in the Machine Learning community, but Matlab's an ugly language and expensive, so I'd feel guilty if I caused anyone to use it.) R is the best tool for actually analyzing data, except perhaps in the case of enormous data sets.
R's weakness, compared to C#, etc, would be its speed, its capacity to handle enormous data sets, and its development environment. So if you want to program things from scratch, use your favorite tool (C#, etc).
If you're mainly in data analysis mode, you might use Python to obtain and preprocess data, then feed it into R and carry on from there: explore, analyze, graph, etc. If you want to say, "I programmed my own Support Vector Machine implementation with the addition of Super Special Sprockets Mapping" use your favorite programming tool (C#, etc), then sanity check and display your answers with R.
I seriously doubt that you'll find Python libraries that implement all of the techniques that you'll find in R packages. But if you want to write code from scratch that really hasn't been done by others, a good programming language with a killer IDE is the way to go. (On the other hand, if you want to go to a Machine Learning website and download some code, those poor confused folks may well have Matlab code, which is nauseating, primitive, and write-only, in my opinion.)
