2 ms·
R is probably the most frustrating language I've ever had to learn. For me, R doesn't so much have a learning "curve" as a learning "gradient". After a long, lo
by zmmmmm 14y ago
R is probably the most frustrating language I've ever had to learn. For me, R doesn't so much have a learning "curve" as a learning "gradient". After a long, long time the rate of frustrations is not really leveling off much. Each time I have to negotiate a new library or module that I'm not familiar with I'm guaranteed hours of frustration as I try to grapple with what all the data types are, how they are subtly overridden to behave differently from the normal data types they inherit from, what things are going to be magically coerced into what other things without me realising it.
Even after 2 years of involvement with it, I regularly meet problems that frustrate me for hours, because they are hard to express in R's functional style. Even when I figure out the final solution, it often performs very poorly. In between these frustrations R behaves almost magically. It manipulates huge data sets with an ease and simplicity that defies logic. I've eventually come to the conclusion that an important aspect of R is knowing when NOT to use it. If your task is inherently stateful, involves random access to lots of sparse relational data that is associated in complex ways and with complicated logic - R is going to make your life hell. Write a quick script to pre-process your data and get things into more like a straight data table form and then proceed with R to analyse and visualize it. This is my experience, anyway!