Hi, Please show a reproducible example. countrydiff <- c("Albania", "Algeria", "Belarus", "Canada", "Germany") long_df <- data.frame(country_name = c("Algeria", "Guyana", "Hungary", "Algeria", "Canada", "Iran", "Iran", "Norway","Uruguay", "Zimbabwe") ) ifelse(long_df$country_name %in% countrydiff,1,0) # [1] 1 0 0 1 1 0 0 0 0 0 #or 1*(long_df$country_name %in% countrydiff) # [1] 1 0 0 1 1 0 0 0 0 0 A.K.
Dear list-members, I have the following problem: I have a vector (countrydiff) with length 72 and another vector (long_df$country_name) which is about 12000 long. Basically what I want to do is to if the factor level (or string name) in long_df$country_name appears on the countrydiff, then long_df$povdat should be equal to 1, if it does not appear on the countrydiff vector then long_df$povdat should be equal to zero. I have tried different combinations and read some. The following code should in my mind do it, but it doesn’t: long_df$povdat<-ifelse(long_df$country_name == countrydiff, 1, 0) long_df$povdat<-ifelse(long_df$country_name %in% countrydiff, 1, 0) Additional information: the factor vector countrydiff contains unique country names (Albania, Zimbabwe etc.), whereas long_df$country_name also contains country names albeit not unique since it is in longform. The unique names that appear in long_df$country_name is around 200. Any suggestions? Thanks in advance. Best Adel ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.