Dear list
It seems to me that extracting elements from a list using '[[' is somewhat
faster than using '$'. For example:
> x <- as.list(1:25)
> names(x) <- letters[1:length(x)]
> dput(x)
structure(list(a = 1L, b = 2L, c = 3L, d = 4L, e = 5L, f = 6L,
g = 7L, h = 8L, i = 9L, j = 10L, k = 11L, l = 12L, m = 13L,
n = 14L, o = 15L, p = 16L, q = 17L, r = 18L, s = 19L, t = 20L,
u = 21L, v = 22L, w = 23L, x = 24L, y = 25L), .Names = c("a",
"b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n",
"o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y"))
>
> system.time({ for (ii in 1:1000000) x[[21]] })
user system elapsed
0.55 0.00 0.54
> system.time({ for (ii in 1:1000000) x[["u"]]})
user system elapsed
0.84 0.00 0.84
> system.time({ for (ii in 1:1000000) x$u})
user system elapsed
1.12 0.00 1.13
Does anyone know if this is always the case? (I have not found anything about
speed in this connection on the help pages, apologies if I have overlooked
something).
I use R.2.11.1 on Windows 7.
Regards
______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.