**Revolutions**, and kindly contributed to R-bloggers)

As with any language, there are often several ways to code up the solution to a programming problem in R. If performance of the code is important (i.e. it's something you plan to run many times, or with a lot of data), *how* you code the solution can often have a big impact on how fast it runs. For example, the RLangTip Twitter feed offered this tip last month:

The *Me Nugget* blog has practical example of this principle in action: in some simple tests, dynamically resizing a matrix (extending it with the rbind function) was more than 150x slower than assigning into an matrix with the dimensions pre-set. (The reason for this is that every time the matrix is extended, an entirely new block of memory must be assigned for the new, larger matrix and the data copied over. So don't do that.) Interestingly, the example shows that extending a list doesn't incur the same penalties -- in R, each element of a list gets its own block of memory. So if you're not sure in advance how many elements you need to store, use a list, and then collect the results at the end with sapply or similar.

Me Nugget: Another aspect of speeding up loops in R

**leave a comment**for the author, please follow the link and comment on his blog:

**Revolutions**.

R-bloggers.com offers

**daily e-mail updates**about R news and tutorials on topics such as: visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...