Формула, которая определяет «в течение 1 года» - PullRequest
0 голосов
/ 04 января 2019

Я довольно новичок в R и пытаюсь написать формулу для нового столбца 'w_1yr' (в течение 1 года), используя два других столбца в моем dataframe: enroll_yr (год регистрации) и lab_yr (год прохождения лабораторного исследования). По сути, я пытаюсь сказать, что если lab_yr находится в пределах 1 года от enroll_yr, то w_1yr = 1, в противном случае 0.

Вот то, что я имею до сих пор, но все же это не правильно.

df$w_1yr <- ifelse(df$lab_yr <= 'enroll_yr', 1, ifelse(df$lab_yr > 'enroll_yr', 0, NA)) (извините по какой-то причине я не могу скопировать / вставить с консоли, поэтому пришлось выписать это)

введите описание изображения здесь

Если кто-нибудь может мне помочь, это было бы здорово! Спасибо!

1 Ответ

0 голосов
/ 04 января 2019

Следующее решение предполагает, что ваш lab_yr всегда будет после enroll_yr

obs<-c(1,2,3)
enroll_yr<-c('2011','2011','2015')
lab_yr<-c('2013','2011','2016')
enroll_yr<-as.numeric(enroll_yr)
lab_yr<-as.numeric(lab_yr)


df<-data.frame(obs,enroll_yr,lab_yr)


df$w_1yr<-ifelse(lab_yr-enroll_yr==1|lab_yr-enroll_yr==0,1,0)
df
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...