Skip to content

Instantly share code, notes, and snippets.

@szilard
Last active June 12, 2016 18:38
Show Gist options
  • Save szilard/d169c8a35bb40f3eb4538cb52d3b6cc0 to your computer and use it in GitHub Desktop.
Save szilard/d169c8a35bb40f3eb4538cb52d3b6cc0 to your computer and use it in GitHub Desktop.
R dataframes copying 3.0 vs 3.1
system.time(z <- 1:1e9)
system.time(d <- data.frame(x = 1:1e9))
system.time(d$y <- 1:1e9)
system.time(d$z <- z)
system.time(d$x[1] <- 0L)
R version 3.0.3 (2014-03-06)
> system.time(z <- 1:1e9)
user system elapsed
1.097 0.638 1.739
>
> system.time(d <- data.frame(x = 1:1e9))
user system elapsed
2.982 2.539 5.531
> system.time(d$y <- 1:1e9)
user system elapsed
3.572 3.101 6.704
> system.time(d$z <- z)
user system elapsed
4.371 4.313 8.713
>
> system.time(d$x[1] <- 0L)
user system elapsed
6.831 6.812 13.730
R version 3.1.0 (2014-04-10)
> system.time(z <- 1:1e9)
user system elapsed
0.739 0.635 1.376
>
> system.time(d <- data.frame(x = 1:1e9))
user system elapsed
0.735 0.642 1.380
> system.time(d$y <- 1:1e9)
user system elapsed
0.740 0.628 1.371
> system.time(d$z <- z)
user system elapsed
0.000 0.000 0.001
>
> system.time(d$x[1] <- 0L)
user system elapsed
0.614 0.746 1.364
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment