我正在處理與每天,男性,白色煙燻類別的出生體重數據。創建一個虛擬變量
我想創建一個非吸菸者的虛擬變量,我使用的是nonsmoker<-ifelse(data$cig==0,1,0)
,但對於吸菸者來說,每天吸菸1-5支,我不知道如何設置系列。
我想也許light smoker<-ifelse(data$cigs==1-5,1,0)
會工作,但不要猜測。
我正在處理與每天,男性,白色煙燻類別的出生體重數據。創建一個虛擬變量
我想創建一個非吸菸者的虛擬變量,我使用的是nonsmoker<-ifelse(data$cig==0,1,0)
,但對於吸菸者來說,每天吸菸1-5支,我不知道如何設置系列。
我想也許light smoker<-ifelse(data$cigs==1-5,1,0)
會工作,但不要猜測。
你需要使用一個布爾值來選擇值大於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
方法的參數
您可能正在尋找'cut'。讀一下'?cut'並在R標籤內搜索。如果您設置了適當的因子變量,R會自動創建假人。 'cut'可能是最好的方法,因爲你也可以爲關卡添加信息。作爲附註,除非您對rstudio本身有疑問,否則請不要提及或標記rstudio。 R和rstudio是獨立的軟件應用程序。 – lmo