Dear R forum, I want to replace all the elements in a data frame (dd) which match the character "x" with "0". What's the most elegant way of doing this (there must be an easy way which I've missed)? I settled on the following loop:
>for(i in 5:12){ # These are the column of dd I am interested in >dd[which(dd[,i]=="x"),i]<-0 >} The problem with this is that the columns which used to contain "x" are still considered factors and I am unable to coerce them into numeric: > mean.species.biomass<-colMeans(as.numeric(dd.p[,5:12])) >Error in inherits(x, "data.frame") : (list) object cannot be coerced to type 'double' I'm tried unclassing & reclassing, other functions etc. but nothing seems to work. What is wrong? Thanks in advance, Allen -- View this message in context: http://n4.nabble.com/Class-attributes-tp948693p948693.html Sent from the R help mailing list archive at Nabble.com. ______________________________________________ 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.