Giả sử tôi có một danh sách hoặc khung dữ liệu trong R và tôi muốn lấy chỉ mục hàng, làm cách nào để thực hiện điều đó? Đó là, tôi muốn biết có bao nhiêu hàng một ma trận nhất định bao gồm.Cách lấy số chỉ mục hàng trong R?
Trả lời
Nó không hoàn toàn rõ ràng chính xác những gì bạn đang cố gắng làm.
Để tham khảo một hàng trong một khung dữ liệu sử dụng df[row,]
Để có được vị trí đầu tiên trong một vector của một cái gì đó sử dụng match(item,vector)
, nơi mà các vector có thể là một trong các cột của khung dữ liệu của bạn, ví dụ như df$cname
nếu cột tên là cname.
Edit:
Để kết hợp các bạn sẽ viết:
df[match(item,df$cname),]
Lưu ý rằng trận đấu mang đến cho bạn mục đầu tiên trong danh sách, vì vậy nếu bạn không tìm kiếm một số tài liệu tham khảo độc đáo , bạn có thể muốn cân nhắc điều gì đó khác.
Đây là một câu trả lời hay cho một câu hỏi khác so với tôi tin rằng cái tôi thay đổi của @ lebesgue đang hỏi. Nếu bạn gõ 'head (df)' có tiêu đề trên tất cả các cột ngoại trừ ID hàng. Vì vậy, tôi nghĩ @lebesgue đang tìm kiếm một chức năng cho phép truy cập vào ID hàng (chức năng 'hàng'). – isomorphismes
Tôi giải thích câu hỏi của bạn về việc nhận số hàng.
- Bạn có thể thử
as.numeric(rownames(df))
nếu bạn chưa đặt lại tên. Nếu không, hãy sử dụng một chuỗi gồm1:nrow(df)
. - Chức năng
which()
chuyển đổi chỉ mục hàng TRUE/FALSE thành số hàng.
Đây là những gì tôi làm, kể từ khi tên hàng DF, ngay cả khi chúng là số, không nhất thiết phải tương ứng với chỉ mục hàng: 'hàng (ô tô [34:50,]) [, 1]; as.integer (tên gọi (xe hơi [34:50,])) '. Tại sao bạn sử dụng 'as.numeric()' ở đây? Nó sẽ không có ý nghĩa hơn khi sử dụng 'as.integer()'? – naught101
Nếu tôi hiểu câu hỏi của bạn, bạn chỉ muốn để có thể truy cập vào các mục trong một khung dữ liệu (hoặc danh sách) bởi hàng:
x = matrix(ceiling(9*runif(20)), nrow=5 )
colnames(x) = c("col1", "col2", "col3", "col4")
df = data.frame(x) # create a small data frame
df[1,] # get the first row
df[3,] # get the third row
df[nrow(df),] # get the last row
lf = as.list(df)
lf[[1]] # get first row
lf[[3]] # get third row
, vv
Xem row
trong ?base::row
. Điều này cho phép các chỉ số hàng cho bất kỳ đối tượng giống ma trận nào.
- 1. Cách lấy hàng và cột từ chỉ mục?
- 2. Lấy chỉ mục hàng bảng của hàng hiện tại
- 3. Cách lấy chỉ mục đúng cách từ đường dẫn chỉ mục trong UICollectionView?
- 4. Cách lấy chỉ số Array trong foreach
- 5. Lấy số hàng tuyệt đối trong lưới
- 6. cách lấy chỉ mục hoặc số mục cùng với khóa, giá trị trong dict
- 7. Làm cách nào để lấy chỉ mục hàng trong danh sách thả xuống đã chọnIndexChanged?
- 8. cách lấy 30 mục hàng đầu trong danh sách
- 9. Java - lấy chỉ mục khóa trong HashMap?
- 10. Cách lấy số hàng của GridView?
- 11. Cách lấy chỉ mục listitem đã chọn trong Qt
- 12. Cách lấy chỉ mục của thành phần gốc trong jQuery
- 13. Cách tự động thu nhỏ số hàng trong khung dữ liệu R khi xóa các hàng trong R
- 14. Lấy chỉ mục của một mục trong danh sách mảng;
- 15. Lấy số hàng trong bảng bằng cách sử dụng SQLAlchemy
- 16. R - cách nhanh nhất để lấy chỉ số của các phần tử n tối đa trong một vector
- 17. Cách lấy chỉ mục của chữ số đầu tiên trong Chuỗi
- 18. Cách lấy cột chỉ mục hàng trong Chế độ Orac bằng cách sử dụng quy tắc cột Calc
- 19. Lập trình R: Làm cách nào để lấy số Euler?
- 20. Chỉ mục hàng của LinkButton trong GridView
- 21. Đặt hàng chỉ mục trên nhiều cột
- 22. Lấy số hàng hiện tại?
- 23. Tìm và lấy chỉ số trong chuỗi
- 24. Cách chọn một số hàng có tên hàng cụ thể từ khung dữ liệu trong R
- 25. Làm cách nào để lấy chỉ mục của một mục trong danh sách trong một bước?
- 26. Chỉ cần lấy một hàng từ PHPExcel
- 27. Lấy chỉ mục của mục hiện tại trong JCarousel
- 28. Lấy bảng() để trả lại số 0 trong R
- 29. Lấy chỉ mục của phần tử bên trong hàng đợi C#
- 30. Tìm chỉ mục hàng bảng bằng cách sử dụng jQuery
Câu hỏi vẫn còn rất khó hiểu. – reinierpost
Tôi nghĩ rằng đó là bởi vì nó là hai câu hỏi: câu thứ hai là những gì @BenBolker trả lời 'nrow (x)' (tức là cho * kích thước * của khung dữ liệu). Câu đầu tiên là về việc nhận số hàng, mà Shane đã trả lời (và không cải thiện) 'as.integer (rownames (x))' –