2015-10-04 13 views
5

varsayalım Bu matris M vardır: Şimdi ben ne yapmalıyım rowname bütün sütun değerlerini ayıklamak için "B00813GRG4" istersenizÖzü tüm sütun R belli bir satır adıyla sıra sıra değerleri

  V1 
B001E4KFG0 A3SGXH7AUHU8GW 
B00813GRG4 A1D87F6ZCVE5NK 
B00813GRG4 ABXLMWJIXXAIN 

. Ben M["B00813GRG4",] çalıştı ama bana sadece "A1D87F6ZCVE5NK" ve hem "A1D87F6ZCVE5NK" ve "ABXLMWJIXXAIN"

cevap

3

Biz mantıklı bir vektör döndürmek için == kullanabilir ve daha sonra satırları subsetine kullanılabilir verir. Sadece match kullanmaya benzer ilk eşleşen elemanı dönecektir satır endeks olarak 'B00813GRG4' kullanılarak

M[rownames(M)=='B00813GRG4',, drop=FALSE] 
#   V1    
# B00813GRG4 "A1D87F6ZCVE5NK" 
# B00813GRG4 "ABXLMWJIXXAIN" 

.

M[match('B00813GRG4', rownames(M)),, drop=FALSE] 
#   V1    
#B00813GRG4 "A1D87F6ZCVE5NK"