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
 
    