Suppose there are many data frames that need the same operation performed on them. For example:
prefix <- c(\"Mrs.\",\"Mrs.\",\"Mr\",\"Dr.\",\"Mrs.\",\"M
Put all your data frames into a list, and then loop/lapply
over them. It'll be much easier on you in the long run.
dfList <- list(df1=df1, df2=df2, ....)
dfList <- lapply(dfList, function(df) {
df$gender[df$prefix == "Mrs."] <- "F"
df
})
dfList$df1
The single instance example would not really create an indicator in the usual sense since the non-"F" values would be <NA>
and those would not work well within R functions. Both arithmetic operations and logical operations will return . Try this instead:
df1$gender <- ifelse(prefix %in% c("Mrs.", "Ms") , "probably F",
ifelse( prefix=="Dr.", "possibly F", # as is my wife.
"probably not F"))
Then follow @HongDoi's advice to use lists. And do not forget to a) return a full dataframe-object , and b) assign the result to an object name (both of which were illustrated but often forgotten by R-newbs.)