Фильтрация фреймов данных с одним столбцом
Я пытаюсь отфильтровать кадры данных, которые имеют только один столбец. Это приводит к тому, что вектор возвращается так:
single.c <- data.frame(col1=c(1,2,3,4,5), row.names=C("r1","r2","r3","r4","r5"))
single.c[single.c$col1 > 2,]
[1] 3 4 5
На самом деле я хочу, чтобы данные возвращались так, как это делается для многостолбцовых фреймов данных:
multi.c <- data.frame(col1=c(1,2,3,4,5), col2=c(1,2,3,4,5), row.names=c("r1","r2","r3","r4","r5"))
multi.c[multi.c$col2 > 2,]
col1 col2
r3 3 3
r4 4 4
r5 5 5
Я вижу, что имеет смысл возвращать вектор, если нет других столбцов, но, как правило, я хочу посмотреть, какие строки также дали этот результат. Почему это происходит, и есть ли простой способ сохранить форму фрейма данных в результате, включая имена строк?