1. 程式人生 > >[R]R語言中用cbind() 和rbind() 構建分塊矩陣

[R]R語言中用cbind() 和rbind() 構建分塊矩陣

用cbind() 和rbind() 構建分塊矩陣
正如前面所暗示的,可以利用函式cbind() 和rbind() 把向量和矩陣拼成一個新
的矩陣。概略地說,cbind() 把矩陣橫向合併成一個大矩陣(列方式),而rbind()
是縱向合併(行方式)。
在命令中
> X <- cbind(arg 1 , arg 2 , arg 3 , ...)
cbind() 的引數要麼是任何長度的向量,要麼是列長度一致的的矩陣(即行數一
樣)。結果將是一個合併arg1 , arg2 , . . . 的列形成的矩陣。
如果cbind() 的引數中有一些比其他矩陣引數的列長度短的向量,它們將會被循
環使用以吻合矩陣的列長度(在沒有矩陣的情況下,吻合其中最長向量的長度)。

函式rbind() 對行進行類似的操作。其中任何向量引數都會被當作行向量且可能
被迴圈使用。
假定X1 和X2 有一樣的行數。下面的命令會把它們的列合併以得到矩陣X,同時要
求起始列都是1
> X <- cbind(1, X1, X2)
rbind() 或者cbind() 返回值常常是矩陣形式。因此,cbind(x) 和rbind(x) 可
能是把向量x 分別轉換成列或者行矩陣最簡單的方法。