|||
R语言中三维数据的调用
熊荣川
六盘水师范学院生物信息学实验室
http://blog.sciencenet.cn/u/Bearjazz
R语言中数据的储存可以是多维的,如三维数据。通常三维数据的调用顺序为“行-列-维”,下面通过几个具体的例子进行展示。
实例一 基本调用
> |
x = array(1:27, dim = c(3, 3, 3)) |
建立一个三维数组x |
> |
x |
查看x |
|
, , 1
[,1] [,2] [,3] [1,] 1 4 7 [2,] 2 5 8 [3,] 3 6 9
, , 2
[,1] [,2] [,3] [1,] 10 13 16 [2,] 11 14 17 [3,] 12 15 18
, , 3
[,1] [,2] [,3] [1,] 19 22 25 [2,] 20 23 26 [3,] 21 24 27
|
第一维
第二维
第三维 |
> |
> x[1,3,2] |
查看第1行,第3列,第2维数据 |
|
[1] 16 |
查看结果 |
范例二 索引矩阵
> |
建立包含三列数据的矩阵z |
|
> |
z |
查看z |
|
[,1] [,2] [,3] [1,] 1 2 3 [2,] 2 2 2 [3,] 3 1 3 |
|
> |
x[z] |
使用矩阵z作为索引,提取x中的相应数据 |
|
[1] 22 14 21 |
查看结果:索引矩阵中每行数据为一个索引信息。例如,第一行为(1,2,3)索引第1行,第2列,第3维数据22;索引矩阵z第2行为(2,2,2)索引x中第2行,第2列,第2维中数据14;索引矩阵z第3行为(3,1,3)索引z中第3行,第1列,第3维中数据21 |
范例三
> |
z2 = matrix(c(1, 2, 3, 2, 2, 1, 3, 2, 3),byrow=TRUE,ncol = 3) |
以先行后列的顺序填充矩阵z2 |
|
> z2 |
查看矩阵z2 |
|
[,1] [,2] [,3] [1,] 1 2 3 [2,] 2 2 1 [3,] 3 2 3
|
查看结果 |
> |
x[z2] |
以矩阵z2的每一行为索引信息查看三维数组x中相应的数据 |
|
[1] 22 5 24 |
查看结果 |
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-9-27 17:23
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社