Ваше решение работало нормально для меня, но, возможно, я неправильно создал data.frame.Вы можете сделать это за 1 шаг, с помощью вашего метода, или за 2 шага, где вы создаете столбец, в котором хранится минимальное значение, и затем фильтруете по этому столбцу.
my_matrix <- data.frame(
TCGA.A7.A0CE.01A.11R.A00Z.07 = c(0.051, 0.09, 0.04),
TCGA.A7.A0CE.11A.21R.A089.07 = c(0.06, 0.01 , 0.067)
)
row.names(my_matrix) <- c("hsa04014","hsa04010","hsa04015")
threshold<-0.05
## In 1 step (your solution):
my_matrix[(apply(my_matrix,1,min)) < threshold,]
## In 2 steps:
my_matrix$min <- as.numeric(apply(my_matrix,1,min))
my_matrix[my_matrix$min < threshold,]