I'm trying to produce a plot in R with data points colored if they meet condition X AND condition Y OR condition Z AND condition Y.
I can produce a graph for half of this argument -- ie: color if condition X and Y are met.
plot(mydata$Mean, mydata$log2FoldChange, cex=0.3, pch=20,
col=ifelse(mydata$foldChange>2 & mydata$pval<0.05, "red", "black"), log="x",
xlab="mydata$mean", ylab="mydata$log2foldchange")
which looks like:this
Ideally, I'd like the bottom half of the graph to be colored for similiar conditions: pval<0.05 and foldChange<0.2.
I've tried:
plot(mydata$Mean, mydata$log2FoldChange, cex=0.3,pch=20, col=ifelse(mydata$foldChange>2 & mydata$padj<0.05, "red", "black"), col=ifelse(mydata$foldChange<0.2 & mydata$padj<0.05, "blue", "black") log="x", xlab="mydata$mean", ylab="mydata$log2foldchange")
But it throws an error:
Error: unexpected symbol in "plot(mydata$Mean, mydata$log2FoldChange, cex=0.3,pch=20, col=ifelse(mydata$foldChange>2 & mydatar$padj<0.05, "red", "black"), col=ifelse(mydata$foldChange<0.2
I'm just not sure how to include an "or" statement in R. Thanks for any help, I'm still very new to R!
c("red","black")[with(mydata, (condition1) | (condition2) ) + 1]maybe? - thelatemail