Я не думаю, что цикл необходим.Если я вас правильно понимаю, вы хотите удалить строки, в которых хотя бы один из столбцов "VOCHTIND", "ZUURGIND", "STIKSIND", "ZOUT_IND"
равен "X"
, это правильно?
Ecobase[rowSums(Ecobase[,Ellenberg_value] == "X") == 0,]
Если вы хотите избавиться от строк с помощью"?"также вы можете сделать:
Ecobase[rowSums(sapply(Ecobase[Ellenberg_value], '%in%', c("X", "?"))) == 0,]