[R] Efficiently create dummy

Chuck Cleland ccleland at optonline.net
Mon Mar 23 10:56:20 CET 2009


On 3/23/2009 5:44 AM, Rob Denniker wrote:
> What's the neat way to create a dummy from a list?
> The code below is not replicable, but hopefully self-explanatory...
> 
> d$treatment<-rep(1,length(d))
> 
> notreat<-c("AR", "DE", "MS", "NY", "TN", "AK", "LA", "MD",  "NC", "OK", "UT", "VA")
> 
> #i would really like this to work:
> d$treatment[d$st==any(notreat)]<-0
> 
> #but instead i resort to this
> for (i in 1:length(notreat)) {
> temp.st <- notreat[i]
> d$treatment[d$st==temp.st]<-0
> i<-i+1 }

d$treatment <- as.numeric(!(d$st %in% notreat))

> Thanks, list!
> 
> ______________________________________________
> R-help at 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. 

-- 
Chuck Cleland, Ph.D.
NDRI, Inc. (www.ndri.org)
71 West 23rd Street, 8th floor
New York, NY 10010
tel: (212) 845-4495 (Tu, Th)
tel: (732) 512-0171 (M, W, F)
fax: (917) 438-0894




More information about the R-help mailing list