2012-03-06 92 views
1

R - 是否有任何方法從列名稱的矩陣中提取多列? 例如在下面的矩陣:R - 提取具有列名稱的子矩陣


    A B C D E 
A 1 3 5 7 9 
B 2 4 6 8 10 

提取子矩陣用柱C,d和E,等:


    C D E 
A 5 7 9 
B 6 8 10 

感謝。

+0

中號< - 矩陣(1:10,nrow = 2,dimnames =列表(LETTERS [1:2],LETTERS [1:5))和然後子集這樣M [C(「C 「,」D「,」E「)] ....非常基本的你應該閱讀並介紹一本關於R – dickoa 2012-03-06 19:36:09

回答

3

只要矩陣有列名(由colnames(m)返回),您可以使用它們來索引要提取的列。

m[, c("C", "D", "E")] 
# C D E 
# A 5 7 9 
# B 6 8 10 
+1

感謝,另一種方式是使用子集,例如:subset(m,select = c(」C「 ,「D」,「E」)) – 2012-03-06 19:38:47

+0

'subset()'很適合交互式使用,但我向你展示的方式通常更好。 (請參閱''subset'幫助文件的** Warning:**部分以獲取關於原因的說明。) – 2012-03-06 19:53:36