我们说我有
x <- array(data=runif(a*b*c), dim=c(a,b,c))
f <- function(data)
{
...
return(list(dim=dim(data))
}
如何在data
内转换f
以获取
> f(data=x[,1,])
$dim
[1] a 1 c
而不是
> f(data=x[,1,])
$dim
[1] a c
?
或者x[,1,]
输入f
后是不可能的?
非常感谢。
答案 0 :(得分:1)
您可以使用drop=FALSE
获取尺寸
f <- function(data){
return(list(dim=dim(data)))
}
f(data=x[,1,, drop=FALSE])
#$dim
#[1] 3 1 3
a <- 3
b <- 2
c <- 3
x <- array(data=runif(a*b*c), dim=c(a,b,c))