Может быть, есть пробелы в начале / отстаивании, а также класс factor
. Таким образом, можно либо обрезать пробелы с помощью trimws
train_1 <- subset(train, trimws(store) == 1)
, либо преобразовать в character
и подмножество
train_1 <- subset(train, as.character(store) == '1')
, либо использовать grepl
train_1 <- subset(train, grepl('1', store))
Обновление
Подмножество удалило 90% строк именно с 913000 до 91300. В числах была путаница.
Использование набора данных OP
train <- read.csv(file.choose())
str(train)
#'data.frame': 913000 obs. of 4 variables:
# $ date : Factor w/ 1826 levels "2013-01-01","2013-01-02",..: 1 2 3 4 5 6 7 8 9 10 ...
# $ store: int 1 1 1 1 1 1 1 1 1 1 ...
# $ item : int 1 1 1 1 1 1 1 1 1 1 ...
# $ sales: int 13 11 14 13 10 12 10 9 12 9 ...
train_y <- subset(train, store == 1)
dim(train_y)
#[1] 91300 4
unique(train_y$store)
#[1] 1