2013-09-21 36 views
7

Tôi có một khung dữ liệu có nhiều hàng. Tôi muốn chọn một số hàng với các tên gọi cụ thể (chẳng hạn như stu2, stu3, stu5, stu9) từ khung dữ liệu này. khung dữ liệu này như sau:Cách chọn một số hàng có tên hàng cụ thể từ khung dữ liệu trong R

 attr1 attr2 attr3 attr4 
    stu1  0  0  1  0 
    stu2  -1  1 -1  1 
    stu3  1 -1  0 -1 
    stu4  1 -1  1 -1 
    stu5  -1  1  0  1 
    stu6  1 -1  1  0 
    stu7  -1 -1 -1  1 
    stu8  1 -1  0 -1 
    stu9  -1 -1  1 -1 
    stu10 -1  1  0  1 

kết quả như sau:

 attr1 attr2 attr3 attr4 
    stu2  -1  1 -1  1 
    stu3  1 -1  0 -1 
    stu5  -1  1  0  1 
    stu9  -1 -1  1 -1 

làm thế nào để giải quyết nó trong R? Cảm ơn bạn.

+8

Theo tôi câu hỏi là một giá trị. Người dùng đã đưa ra kết quả mong đợi. Vâng, anh ta có vẻ là một người mới với một sự hiểu biết tối thiểu về R nhưng tôi tin rằng điều này sẽ không được tổ chức chống lại anh ta. Sau khi tất cả, chúng tôi là tất cả noobs trong một số lĩnh vực. – Nick

Trả lời

22

Giả sử rằng bạn có một khung dữ liệu được gọi students, bạn có thể chọn từng dòng hoặc cột bằng cách sử dụng cú pháp khung, như thế này:

  • students[1,2] sẽ chọn dòng 1 và cột 2, kết quả đây sẽ là một ô duy nhất.
  • students[1,] sẽ chọn tất cả các hàng 1, students[,2] sẽ chọn tất cả các cột 2.

Nếu bạn muốn chọn nhiều hàng hoặc cột, sử dụng một danh sách các giá trị, như thế này:

  • students[c(1,3,4),] sẽ chọn các hàng 1, 3 và 4,
  • students[c("stu1", "stu2"),] sẽ chọn các hàng có tên stu1stu2.

Hy vọng tôi có thể trợ giúp.

+2

nếu các hàng và cột được trích xuất liên tiếp, sau đó sinh viên [: , : ] cũng có thể được sử dụng. ví dụ; sinh viên [11:20, 2:10] chọn các hàng 11 đến 20 và các cột từ 2 đến 10. Tuy nhiên, nếu tên hàng hoặc tên cột phải được chỉ định, thì sinh viên [c ("rowname1", "rowname2", ...), c ("colname1", "colname2" ..] có thể được sử dụng. –

1
df <- data.frame(x=rnorm(10), y=rnorm(10)) 
rownames(df) <- letters[1:10] 
df[c('a','b'),] 
3

Bạn cũng có thể sử dụng này:

DF[paste0("stu",c(2,3,5,9)), ] 
Các vấn đề liên quan