R數據結構之矩陣創建


 矩陣是一個二維數組,只是每個元素都擁有相同的模式(數值型、字符型或邏輯型)。可通過函數matrix( )創建矩陣。一般使用格式為:
Mymatrix  <-  matrix(vector,nrow=number_of_rows,ncol=number_of_columns,
                byrow=logical_value, dimnames=list(
                char_vector_rowname,char_vector_colnames))
其中vector包含了矩陣的元素,nrow和ncol用以指定行和列的維數,dimnames包含了可選的、 以字符型向量表示的行名和列名。選項byrow則表明矩陣應當按行填充(byrow=TRUE)還是按列填充(byrow=FALSE),默認情況下按列填充。簡單示例如下:
> y <- matrix(1:20,nrow=5,ncol=4)  #創建一個$5\times 4$的矩陣
> y
     [,1]   [,2]  [,3]  [,4]
[1,]    1    6   11   16
[2,]    2    7   12   17
[3,]    3    8   13   18
[4,]    4    9   14   19
[5,]    5   10   15   20
> cells <- c(1,26,24,68)
> rnames <- c('R1','R2')
> cnames <- c('C1','C1')
> mymatrix <- matrix(cells,nrow=2,ncol=2,byrow=TRUE,dimnames=list(rnames ,cnames ))
> mymatrix )#按行填充的$2\times 2$ 的矩陣
   C1 C1
R1  1 26
R2 24 68
> mymatrix <- matrix(cells,nrow=2,ncol=2,byrow=FALSE,dimnames=list(rnames ,cnames ))
> mymatrix #按列填充的$2\times 2$ 的矩陣
   C1 C1
R1  1 24
R2 26 68
我們可以使用下標和方括號來選擇矩陣中的行、列或元素。$\text{X }\!\![\!\!\text{ i, }\!\!]\!\!\text{ }$指矩陣X中的第$i$行,$\text{X }\!\![\!\!\text{ ,j }\!\!]\!\!\text{ }$ 指第$j$列,$\text{X }\!\![\!\!\text{ i,j }\!\!]\!\!\text{ }$ 指第$i$行第$j$個元素。選擇多行或多列時,下標$i$和$j$可為數值型向量,如:
> y[2,]       #第二行的元素
[1]  2  7  12  17   
> y[,2]        #第二列的元素
[1]  6  7  8  9  10  
> y[1,4]        #第一行第四列的元素
[1] 16
> y[1,c(3,4)]      #第一行第四、第五列的元素
[1] 11  16


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM