我试图取代NA使用regex类似的功能gsub-
样本数据-
a<-c(NA,1:5,NA,NA,1:3, rep(NA,round(runif(1,0,100))))
Run Code Online (Sandbox Code Playgroud)
如何NA在pattern匹配字段中进行识别。
对于例如 gsub("identify NA", 0, a)
注意-我知道其他可以替换的方法NA,但是我正在尝试NA使用确定regex。
编辑-我的目的是了解为什么正则表达式无法识别NA?
不要使用gsub()或其他reg.exp函数- NA 已经是可识别的,因此使用is.na()。
R> a<-c(NA,1:5,NA,NA,1:3, rep(NA,round(runif(1,0,100))))
R> a
[1] NA 1 2 3 4 5 NA NA 1 2 3 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[30] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
R> a[is.na(a)] <- 42
R> a
[1] 42 1 2 3 4 5 42 42 1 2 3 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42
[30] 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42 42
R>
Run Code Online (Sandbox Code Playgroud)
在这里,我们简单地对向量a进行索引,is.na(a)并且为了使其简单,只需为这些值分配一个新值。
简而言之,不要将NA打印实际NA值时显示的“文本” 与的条件混淆NA。