R 使用缺少数据的ifelse构造新变量

R 使用缺少数据的ifelse构造新变量,r,if-statement,R,If Statement,我正在尝试使用ifelse语句构造一个新变量,该语句说明如果在w1或w2处MMSE分数为=4,则归类为1,如果不是0 数据帧 mmse_w1 mmse_w2 fast_w1 fast_w2 1 27 29 1 1 2 28 25 1 13 5 30 22 1 4 7 16 4 4 16 38

我正在尝试使用ifelse语句构造一个新变量,该语句说明如果在w1或w2处MMSE分数为=4,则归类为1,如果不是0

数据帧

   mmse_w1 mmse_w2 fast_w1 fast_w2
1        27      29       1       1
2        28      25       1      13
5        30      22       1       4
7        16       4       4      16
38       25      NA       2      NA
45        0      NA      11      NA
72       NA      NA      10      NA
414      NA      NA      NA      NA

dat$dementia <- with(dat, ifelse(mmse_w1 <24 | fast_w1 >=4 | mmse_w2 <24 | fast_w2 >=4, 1, 0))

    mmse_w1 mmse_w2 fast_w1 fast_w2 dementia
1        27      29       1       1        0
2        28      25       1      13        1
5        30      22       1       4        1
7        16       4       4      16        1
38       25      NA       2      NA       NA
45        0      NA      11      NA        1
72       NA      NA      10      NA        1
414      NA      NA      NA      NA       NA
mmse\u w1 mmse\u w2 fast\u w1 fast\u w2
1        27      29       1       1
2        28      25       1      13
5        30      22       1       4
7        16       4       4      16
38 25 NA 2 NA
45 0 NA 11 NA
72 NA 10 NA
414纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳纳

dat$24或fast是因为
TRUE
在内部是1而
FALSE
是0,
pmax
将为您执行以下操作:

with(dat, pmax(mmse_w1 <24,fast_w1 >=4,mmse_w2 <24,fast_w2 >=4,na.rm=TRUE) )
#[1]  0  1  1  1  0  1  1 NA
带有(dat,pmax(mmse_w1=4,mmse_w2=4,na.rm=TRUE))
#[1] 011011 NA

第414行应该是什么?NA还是零?