Причина, по которой это не работает, состоит в том, что вы сравниваете тибл с тиблом. Предложение прочитано книга R Хэдли Уикхема , где написано:
Подмножество тибла с помощью [всегда возвращает тиббл:
Мы можем попробовать пример:
sizes <- factor(c(1,2,3,7,9,2,1,3,7,3,9,2,3), levels = c(1,3,2,7,9),ordered=TRUE)
write.csv(data.frame(A=1:length(sizes),sizes=sizes),"test.csv",row.names=FALSE)
A_Dataset <- read_csv("test.csv",
col_types = cols(A = col_integer(),
sizes = col_factor(levels = c("1","3", "2", "7", "9"))))
A_Dataset$sizes = factor(A_Dataset$sizes, levels=c(1,3,2,7,9),ordered=TRUE)
Если посмотреть на класс:
class(A_Dataset[1,2])
[1] "tbl_df" "tbl" "data.frame"
Нельзя сравнивать data.frames, можно сделать:
class(A_Dataset$sizes[2])
[1] "ordered" "factor"
A_Dataset$sizes[2] > A_Dataset$sizes[1]
[1] TRUE
И это работает:
as.data.frame(A_Dataset[2,2]) >as.data.frame(A_Dataset[1,2])
sizes
[1,] TRUE