等同于lapply(a,function(x) x [,1])的作用?

4
有没有更简洁的代码等价于这个代码?
a <- list(matrix(1,3), matrix(2,3))
lapply(a, function(x) x[,1])

我想填写 ???

lapply(a, `[`, ???)
1个回答

6
我们需要使用,来模拟行列索引。在这里,我们想要获取该列及所有行中的内容。因此,我们可以将其留空(, ,)。
lapply(a, `[`, , 1)

假设我们想要提取第一行。这里的[表示提取运算符。在逗号后面,我们开始进行行/列索引。在下面的情况下,我们正在提取第一行,因此应该是1,后跟一个,,表示获取该行的所有列值。
lapply(a, `[`, 1,)

或者对于单列 矩阵
lapply(a, c)

请问您能否简单解释一下第一个括号中的语法? - Bea
@GyB 我添加了一些解释。希望对你有所帮助。 - akrun

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接