将不等长度列表转换为均匀长度

时间:2014-05-15 16:41:28

标签: r list

我有一个列表,其中每个切片的长度不等。此外,预先不知道切片的数量,但我想将每个切片设置为最大尺寸。下面是一个示例,其中两个切片的最大长度为20.第二个切片的长度为6,因此我想将其转换为20的长度。优选地,新长度用NA或NULL填充。

data <- c(1,12,2,43,1,23,6,34,1,3,4,7,9,67,5,2,1,3,4,5,6,78,9,99,100,0)
splitData <- split(data, ceiling(seq_along(data)/20))

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用[运算符,当访问超出向量的长度时,返回NA。您可以将其与lapply结合使用,如下所示:

lapply(splitData, `[`, 1:20)