假设我进行了以下拆分:
x <- 1:5
K <- 2
y <- 5
split(sample(x), sample(1:K, y, replace = TRUE))
$`1`
[1] 3
$`2`
[1] 5 1 2 4
有没有办法把上面的形式
[, 1] [, 2]
[1, ] 3 5
[2, ] 1
[3, ] 2
[4, ] 4
最佳答案
您可以使用length<-
用NA填充那些空元素,这对于sapply
的结果将是完美的。
a <- split(sample(x), sample(1:K, y, replace = TRUE))
a
# $`1`
# [1] 2 3
#
# $`2`
# [1] 5 1 4
sapply(a, "length<-", max(lengths(a)))
# 1 2
# [1,] 2 5
# [2,] 3 1
# [3,] NA 4
关于r - 在R中更改split()的输出格式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51003310/