我正在处理的数据如下所示:
timestamp switchOnOff speed speedlimit
2015-03-26 20:00:00 NULL NULL 35
2015-03-26 20:15:00 NULL 41 35
2015-03-26 20:30:00 0 49 35
2015-03-26 20:45:00 1 NULL 35
2015-03-26 21:00:00 Yes NULL NULL
2015-03-26 21:15:00 NULL NULL 35
2015-03-26 21:30:00 No NULL NULL
2015-03-26 21:45:00 5 51 40
对于变量:
switchOnOff: 0, 1
;
- 它还有许多其他级别,我试图将其转换为0,1只。我尝试了以下for循环,由于NULLs (empty, length = 0)
:
for (i in 1:length(timestamp)) {
if (is.null(switchOnOff[i]) | switchOnOff[i] == "Yes") {
switchOnOff[i] = 1
} else if (switchOnOff[i] == "No") {
switchOnOff[i] = 0
} else if (switchOnOff[i] >= 1){
switchOnOff[i] = 1
} else {switchOnOff[i] = switchOnOff[i]}
}
所以我想知道是否有人知道解决这种Null-filling问题的更好方法?此外,有没有办法将数据导入R而不忽略NULLs
所以数据将保持在他们应该的确切位置?非常感谢!
中号