У меня есть файл p-значений моего анализа. Я хочу использовать оператор if else, чтобы сделать следующее:инструкция if-else в R
, если значение p меньше 0,01, дает зеленый цвет. если p-значение больше 0,01 и меньше 0,05, то красный цвет. если p-значение больше 0,05, дает желтый цвет.
Я пытался использовать следующий код, но не работает:
col=ifelse(data < 0.01,"green" ,
ifelse(data > 0.01 & data < 0.05, "red"),
ifelse(data>0.05, "yellow"))).
Что вы имеете в виду под «не работает». Дайте сообщения об ошибках точно так, как они появляются. Вы должны предоставить [воспроизводимый пример] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example) с вашим вопросом. Для функции 'ifelse()' требуется как часть 'if', так и' else'. Похож на то, что ваша «желтая» часть отсутствует «else» – MrFlick
Кроме того, похоже, что «красная» часть закрывается неправильно. –
ifelse - это векторизованная функция, не предназначенная для такого рода вложенности, если иначе. Просто используйте регулярные if, else if, else if и т. Д., Так как у вас нет необходимости в векторизации. – dracodoc