У меня есть следующий простой data.table "test".Я хотел бы выбрать все строки от 3 до 8 строк с X, равным «A»:
library(data.table)
set.seed(1)
test <- data.table(X=c(rep("A",5),rep("B",5)),Y=rnorm(10),Z=rnorm(10))
test[3:8 & X == "A"] # gives the not desired output:
1: A -0.6264538 1.5117812
2: A 0.1836433 0.3898432
3: A -0.8356286 -0.6212406
4: A 1.5952808 -2.2146999
5: A 0.3295078 1.1249309
Warning message:
In 3:8 & X == "A" :
longer object length is not a multiple of shorter object length
# desired outcome:
3: A -0.8356286 -0.62124058
4: A 1.5952808 -2.21469989
5: A 0.3295078 1.12493092
Между строк 3: 8, я хотел бы выбрать только те, с X == «A»,Как это возможно?Обратите внимание, что использование test[3:8][X == "A"]
, по-видимому, не является опцией, потому что я хочу сделать некоторые вычисления для этих строк, которые сохранены в исходной таблице данных.