I have a dataframe like this:
df1 <- data.frame(
E11 = c(2, 4, 6, 8),
E14 = c(3, 5, 7, 9),
E18 = c(3, 3, 3, 3),
Adult = c(9, 7, 5, 3),
E14vsE11 = c(1, 1, 1, 1),
E18vsE14 = c(0, -2, -4, -6),
AdultvsE18 = c(6, 4, 2, 0)),
row.names = c("geneA", "geneB", "geneC", "geneD")
)
I want to add cluster factors to them based on the comparison values and my code is:
filtera <- df1$E14vsE11 >0 & df1$E18vsE14 >0 & df1$AdultvsE18 >0
filterb <- df1$E14vsE11 <0 & df1$E18vsE14 <0 & df1$AdultvsE18 <0
filterc <- df1$E14vsE11 ==0 & df1$E18vsE14 ==0 & df1$AdultvsE18 ==0
for (i in (1:nrow(df1))){
if (isTRUE(filtera)){
df1$cluster <- "cluster1"
} else if (isTRUE(filterb)){
df1$cluster <- "cluster2"
} else if (isTRUE(filterc)){
df1$cluster <- "cluster3"
} else {
df1$cluster <- "cluster4"
}}
But in the output all were filled with "cluster4". How should I modify the code to get it correct