>
x<-c(1:9)
> x
[1] 1 2 3 4 5 6 7 8 9
mx<-matrix(x,nrow=3)
> mx
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
> res<-apply(mx,c(1,2),function(x)x^2)
> res
[,1] [,2] [,3]
[1,] 1 16 49
[2,] 4 25 64
[3,] 9 36 81
使用格式为:
apply(X, MARGIN, FUN, ...)
其中X为一个数组;MARGIN为一个向量(表示要将函数FUN应用到X的行还是列),若为1表示取行,为2表示取列,为c(1,2)表示行、列都计算(即对每个元素计算)。
x<-c(1:27)
dim(x)<-c(3,3,3)将x转化为一个3*3*3的数组
x<-array(1:27,dim=c(3,3,3))
> b <- matrix(1:12, ncol=4, byrow=T)
> b
[,1] [,2] [,3] [,4]
[1,] 1 2 3 4
[2,] 5 6 7 8
[3,] 9 10 11 12
> b <- matrix(1:12, ncol=4, byrow=F)
> b
[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
1.数组下标从1开始
> b <- matrix(1:12, ncol=4, byrow=F)
> b
[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
> b[1]
[1] 1
> b[1][2]
[1] NA
> b[1,2]
[1] 4
> b[1,5]
Error: subscript out of bounds
> b[1,4]
[1] 10
x<-c(1:9)
> x
[1] 1 2 3 4 5 6 7 8 9
mx<-matrix(x,nrow=3)
> mx
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
> res<-apply(mx,c(1,2),function(x)x^2)
> res
[,1] [,2] [,3]
[1,] 1 16 49
[2,] 4 25 64
[3,] 9 36 81
使用格式为:
apply(X, MARGIN, FUN, ...)
其中X为一个数组;MARGIN为一个向量(表示要将函数FUN应用到X的行还是列),若为1表示取行,为2表示取列,为c(1,2)表示行、列都计算(即对每个元素计算)。
x<-c(1:27)
dim(x)<-c(3,3,3)将x转化为一个3*3*3的数组
x<-array(1:27,dim=c(3,3,3))
> b <- matrix(1:12, ncol=4, byrow=T)
> b
[,1] [,2] [,3] [,4]
[1,] 1 2 3 4
[2,] 5 6 7 8
[3,] 9 10 11 12
> b <- matrix(1:12, ncol=4, byrow=F)
> b
[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
1.数组下标从1开始
> b <- matrix(1:12, ncol=4, byrow=F)
> b
[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
> b[1]
[1] 1
> b[1][2]
[1] NA
> b[1,2]
[1] 4
> b[1,5]
Error: subscript out of bounds
> b[1,4]
[1] 10