【发布时间】:2017-03-21 09:20:05
【问题描述】:
我得到了一个列表变量“括号”,它的维度是 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的行怎么办?
【问题讨论】:
-
我收到以下错误:FUN(X[[i]], ...) 中的错误:下标越界。如果我有一些没有值/NA的行怎么办?
-
@zx8754 这不是骗子。 OP 还有一些其他问题。
-
NA 无关紧要。空槽虽然会导致错误。要克服它们,您只需执行
sapply(bracket[lengths(bracket) != 0], '[[', 1) -
@ÜbelYildmar
sapply()正在深入研究每个元素的列表。试试sapply(bracket, '[', 1) -
@ÜbelYildmar 你能让你的例子可重现吗?您当前的示例没有出现该问题,当我有一个空元素或一个只是 NA 的元素时,我没有得到您所做的错误。
标签: r