我得到了一个列表变量'bracket',其尺寸为n x m,其中n表示行,m表示给定行中的元素数。但是,n是常数,但是m会变化。
> bracket
[[1]]
[1] 8
[[2]]
[1] 11 22
[[3]]
[1] 13 25
[[4]]
[1] 18
我想看到以下内容:
> bracket
[1] 8 11 13 18
我该怎么做?谢谢你的帮助!
使用sapply(bracket, '[[', 1)
后,我遇到了一些麻烦。我收到以下错误:
FUN中的错误(X [[i]],...):下标越界。如果我有一些没有值/ NA的行怎么办?
答案 0 :(得分:1)
我自己制作了一个数据示例来重现错误:
bracket <- list(8, c(11, 22), c(13, 25), 18)
sapply(bracket, '[[', 1) # will not reproduce the error
sapply(bracket, '[', 1) # will not reproduce the error
bracket <- list(8, c(11, 22), numeric(0), c(13, 25), 18)
sapply(bracket, '[[', 1) # will reproduce the error
sapply(bracket, '[', 1) # gives NA
na.omit(sapply(bracket, '[', 1)) # omits the NAs