R语言 条件值插补:对于非吸烟者,是否将“不可用”设置为0?

rpppsulh  于 2023-06-03  发布在  其他
关注(0)|答案(1)|浏览(129)

我有一个关于R中赋值的问题。特别是,我有两个变量:一个名为“你吸烟吗”的分类变量,其中调查询问一个人目前是否吸烟(代码1),过去是否吸烟(代码2)或不吸烟(代码3)。第二个变量是“每天吸烟的数量”。问题是,这个数据被认为是“不可用”的人回答说,他们不吸烟目前,即使我认为它应该是0.

我想应用一个代码来说明,当变量“当前吸烟”等于2或3时,那么对于特定的观察,sigarettes的数量必须为0。你知道我该怎么做吗提前感谢您

rta7y2nd

rta7y2nd1#

下面是一个包含一些玩具数据的示例:

smokers_df <- data.frame(currently_smoking = c(1, 3, 2, 1, 1, 3, 3, 2, 1, 1),
                         number_of_cigs = c(10, NA, 5, 25, 12, NA, 0, 10, 1, 17))
smokers_df
currently_smoking number_of_cigs
1                  1             10
2                  3             NA
3                  2              5
4                  1             25
5                  1             12
6                  3             NA
7                  3              0
8                  2             10
9                  1              1
10                 1             17
idx <- which(smokers_df$currently_smoking %in% 2:3)
smokers_df[ idx, 'number_of_cigs' ] <- 0
smokers_df
currently_smoking number_of_cigs
1                  1             10
2                  3              0
3                  2              0
4                  1             25
5                  1             12
6                  3              0
7                  3              0
8                  2              0
9                  1              1
10                 1             17

相关问题