制作R

时间:2015-10-22 20:53:28

标签: r

为什么在R

e=list(a,b,c,d)

不同于:

e=list(a,b)
e=list(e,c)
e=list(e,d)

第二种方法可以很容易地在for循环中使用,但它会产生不同的结果,我每次迭代都会创建1个对象,所以不能使用第一种方法,任何提示?

1 个答案:

答案 0 :(得分:1)

如果你绝对想要使用这种方法,你可以这样做:

# Make up some data
a <- 1:3; b <- 4:5; c <- 6:10; d <- 11:17

# Build up the lists
e0 <- list(a, b, c, d)
e <- list(a, b)
e <- c(e, list(c))
e <- c(e, list(d))

# Compare the two
identical(e0, e) # TRUE

然而,在现实生活中,使用*apply系列中的函数(例如lapply())可能会更好地使用'id'系列中的函数,而不是使用循环,这将返回输出列表直接