Giả sử tôi có data.table và tôi muốn chọn tất cả các hàng có biến x có giá trị b. Điều đó thật dễ dàngLàm cách nào để chọn các hàng theo hai tiêu chí trong data.table trong R
library(data.table)
DT <- data.table(x=rep(c("a","b","c"),each=3), y=c(1,3,6), v=1:9)
setkey(DT,x) # set a 1-column key
DT["b"]
Nhân tiện, có vẻ như bạn phải đặt khóa, nếu khóa không được đặt thành x thì điều này không hoạt động. Bằng cách nào sẽ xảy ra nếu tôi đặt hai cột làm khóa?
Dù sao, di chuyển dọc theo, cho phép nói rằng tôi muốn chọn tất cả các hàng nơi biến x là a hoặc b
DT["b"|"a"]
không hoạt động
Nhưng các công việc sau
DT[x=="a"|x=="b"]
Nhưng điều đó sử dụng quét vector một khung dữ liệu la. Nó không sử dụng tìm kiếm nhị phân. Tôi đoán cho các tập dữ liệu nhỏ hơn nó sẽ không quan trọng.
Đó có phải là những gì tôi nên làm hoặc tôi không biết gì về cú pháp data.table?
Và một điều nữa. Có bất kỳ ví dụ nào về các thủ tục lựa chọn đa biến phức tạp hơn (hoặc tập con) với dữ liệu.
Tôi biết tôi luôn có thể hoàn nguyên về việc sử dụng hàm subset() kể từ khi dữ liệu có thể hoạt động như một data.frame nếu nó phải.
Ví dụ chi tiết về khóa đa cột trong phần giới thiệu. –
Và không chắc chắn làm thế nào nó được biết là làm việc thông qua kết quả của 'ví dụ (data.table)' tại dấu nhắc - ví dụ là có. –