Cross Validated is a question and answer site for people interested in statistics, machine learning, data analysis, data mining, and data visualization. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

My work involves building statistical / econometric models using R, SPSS modeler. I am also doing my PhD (part time) in econometrics. In order to do more advanced data / model visualisation I am thinking about to pick up another programming language. Any suggestion will be much appreciated.

share|improve this question

closed as not constructive by whuber Nov 15 '12 at 16:40

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

For this to become an answerable question, we need specifics about what you intend to do with this language and the criteria you need to apply to compare languages. I'm afraid that "advanced" is not a specific enough description of what you're looking for. – whuber Nov 15 '12 at 5:50

For nice visualizations I'd suggest Matlab, but it is more an alternative to R rather than something completely different.

Python is something you could appreciate both for processing and visualization. It is not too quick, but quite flexible and with lots of useful libraries. Easy to learn...

All in all, there are lots of options and it really depends on what you are after. If you want some heavy numeric processing abilities, there's C++. Java is also quick and would be good for simpler visualizations as well and easier to learn IMO.

You are talking about visualizations and it is not really a programming language thing, I mean there is some software which can produce nice plots etc... Check out Mathematica for example.

share|improve this answer
Actually, python, with a JIT compiler like psyco, is quite fast, for basic operations (See…). Python with Numpy is also comparable to matlab (see Matlab is intended for different things than R: numerical/matrix computation, rather than statistical work. Python is more general, and that's a big plus. – naught101 Nov 22 '12 at 6:00
Yes, you are right, Python can be made pretty quick if you want, and make C++ inclusions etc, but if speed is an issue, it is not the best thing for the beginner, could be tricky to speed it up. Matlab is focused on different things surely, I was mainly thinking about visual component which is quite strong in Matlab. – sashkello Nov 22 '12 at 6:25

My take: you will probably gain more in the way of data and model visualization abilities if you a) dig deeper into R (e.g., looking through the R Graph Gallery) and b) read general literature about visualization (Tufte, Cleveland etc.) than if you learn a new programming language. Yes, knowing more programming languages is often helpful, as when you need to speed up a massive data analysis by using C instead of R. But when it comes to visualization specifically, I would say that R already offers most everything you could want to do - you just need to find out how and what you do want.

share|improve this answer

If the big thing is data-visualization as the question is tagged I would say JavaScript. There are tons of really cool ways to visualize data in very pretty ways with JS, one example is

share|improve this answer

For visualisation of models or data, R plus the various additional packages should be sufficient, as @StephenKolassa suggests.

If you're going to do econometric things, I guess you might still pick another language either because you want to do a lot of something that R does not offer or make particularly easy, or you want to to make your existing procedures go faster. For the first task, maybe you want to learn how to use BUGS, JAGS or STAN to run MCMC models more easily. For the second you basically want to learn C or C++.

It's possible that you'll find it easier to construct and work with arbitrary model-based quantities of interest if you happen to have a posterior sample of all your unknowns to hand. This is a less appreciated advantage of working within a sampling or MCMC-oriented language. Obviously if you're not happy with things Bayesian this is irrelevant.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.