我正在研究出生体重数据,每天吸烟,男性,白色。
我正在尝试为非吸烟者创建虚拟变量,我使用nonsmoker<-ifelse(data$cig==0,1,0)
,但对于轻度吸烟者,每天吸1-5支香烟,我不知道如何设置系列。 / p>
我想也许light smoker<-ifelse(data$cigs==1-5,1,0)
会起作用,但不要猜测。
答案 0 :(得分:1)
您需要使用布尔值来选择大于1且小于5的值。例如:
smoker<-ifelse((data$cigs>=1) & (data$cigs<=5),1,0)
您还可以使用cut
方法创建一个因子,然后您可以重命名这个级别:
cig <- 0:10 # your original data
smoker <- cut(cig , c(-1, 0, 5, 10))
levels(smoker) <- c("0", "1-5", "6-10") # rename the levels
然后会给你一个看起来像这样的因素:
> smoker
[1] 0 1-5 1-5 1-5 1-5 1-5 6-10 6-10 6-10 6-10 6-10
您可以通过使用include.lowest
方法的right
和cut
参数来设置切割边界(即包含端点/不包括端点的范围?) >