Как я вижу, вы хотите разместить столбцы на основе col2. Вы должны указать матрицу также во втором аргументе subset
с a[,colname]
.
a <- 1:100
a <-matrix(a, c(20,5))
colnames(a) <- c("col1","col2","col3","col4","col5")
b <- subset(a, a[,"col2"] > 28, select = c("col1","col2","col3","col4","col5"))
Если вы хотите отфильтровать более одного столбца, вы можете использовать &
или |
(и и или). Например:
a <- 1:100
a <-matrix(a, c(20,5))
colnames(a) <- c("col1","col2","col3","col4","col5")
b <- subset(a, a[,"col2"] > 28 & a[,"col3"] < 58, select = c("col1","col2","col3","col4","col5"))
Вот пример с условием между, это также можно объединить с &
и |
.
b <- subset(a, dplyr::between(a[,"col2"], 28, 30), select = c("col1","col2","col3","col4","col5"))