I’ve spent my brief career with statistical computing largely invested in R. I love R, and have spent a good deal of time blogging about the language and helping to develop packages for it. While I love R and find it to be incredibly powerful (and an amazing developer community), even I realize R has its limitations. In the age of big data and parallel computing, many R developers have been made painfully aware of the limitations of the language. Luckily, there are lots of efforts in place to help with these problems on the R side of things.
I did the following in Julia, these are tasks I regularly do in R:
Summarize the data
Visualize the data
I tried out JuliaStudio, Julia’s IDE but moved back to command line after running into some issues( I was warned that Julia was not quite ready for IDE’s).
Uploading & Summarizing Data
I used the RDatasets package to get datasets to toy with in Julia. Summarizing the data using dataframes was easy using the describe function, which works similarly to summary in R. Using some of Julia dataframe packages allows you to get descriptive statistics for columns as well, which I found useful. You can use mean(column) to just just the mean, for example.
I was pretty excited to use Gadfly, a very impressive package for visualizations that utilizes d3.js and grammar of graphics syntax. It certainly did not disappoint. I was able to visualize the nuero and diamonds datasets easily with the built in grammar of graphics style. The ability to use several backends for the graphics is also quite handy. I couldn’t quite get SVG or d3.js to embed properly in my site that’s hosted on Tumblr (All Tumblr’s fault, works great with WordPress), so having a PNG option was nice. I’ve used many frameworks for graphics in the past and I have to say this is one of the best. It offers simplicity, yet a robust set of features for a framework so young.
I had fun using Julia, and I will do more projects with the language. I will say that not everything was smooth, but that is to be expected with where the language is at this point. My struggles were likely compounded by being young with programming in general, and trying to get quickly ramped up on Julia. With some time and practice I’m going to add Julia to my workflow and begin making contributions to the community. Speaking of the community, I am impressed with how active and helpful everyone is. It’s certainly an environment that I’m excited to get more involved in.