我有一个约3000行的表格,其数据格式为:
Number Type
10001 0
10005 7
10006 0
10007 14
10012 16
10022 14
10023 0
10024 0
10029 7
10035 17
10045 14
我想添加第三列,以便表看起来像:
Number Type SCHEach
10001 0 0
10005 7 0
10006 0 0
10007 14 0
10012 16 1
10022 14 0
10023 0 0
10024 0 0
10029 7 0
10035 17 1
10045 14 0
SCHEach列中的值基于Type列中的值。如果“类型”列中的值为16、17、21或22,则SCHeach列中的值应为1。对于“类型”列中的任何其他值,SCHEach值应为0。
现在我正在使用以下
library(dplyr)
schtable$SCHEach = ifelse(
schtable$Type == 16 |
schtable$Type == 17 |
schtable$Type == 21 |
schtable$Type == 22, 1, 0)
我是R的新手,想知道是否有一种方法可以不必在16,17,21和22处分别键入以下内容?
schtable$Type == 'number'
最佳答案
> mydf$SCHEach <- ifelse(mydf$Type %in% c(16,17,21,22),1,0)
> mydf
Number Type SCHEach
1 10001 0 0
2 10005 7 0
3 10006 0 0
4 10007 14 0
5 10012 16 1
6 10022 14 0
7 10023 0 0
8 10024 0 0
9 10029 7 0
10 10035 17 1
11 10045 14 0
关于r - 对列中的多个值使用ifelse语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40330343/