Đây có thể là lỗi. Trong trường hợp đó, tôi sẽ xóa câu hỏi này và báo cáo là lỗi. Tôi muốn ai đó xem xét để đảm bảo rằng tôi không làm điều gì đó không chính xác vì vậy tôi không lãng phí thời gian của nhà phát triển.tham gia nhanh dữ liệu.table (lỗi tiềm năng, kiểm tra trước khi báo cáo)
test = data.table(mo=1:100, b=100:1, key=c("mo", "b"))
mo = 1
test[J(mo)]
Đó trả toàn bộ test
data.table thay vì kết quả đúng được trả về bởi
test[J(1)]
tôi tin rằng các lỗi có thể đến từ test
có tên cùng một cột như bảng hiện đang được gia nhập bởi, mo
. Có ai khác có cùng một vấn đề không?
Tôi không thể giải thích hành vi, nhưng fwiw: 'foo = 1; kiểm tra [J (foo)] 'có kết quả mong đợi. Điều này cũng đúng với 'test [mo]' và 'mo = data.table (1); kiểm tra [mo] '. – Justin
Ngoài ra, 'giống hệt nhau (kiểm tra [J (1)], kiểm tra [J (mo <- 1)])' cho 'TRUE'. – Ryogi