R语言的向量化编程思维

时间:2023-01-22 13:04:19

1.计算缺失值比例

perNA<- mean(is.na(Data1))

2.按值替换

#which返回值是符合条件的下标

NAIDX<- which(Data2<=3 | Data2>=8)
Data2[NAIDX]<- NA

3.找到连续不变且长度超过50的数值片段的起、始行号和片段的总长度。

Judger1<-x$v[2:(nrow(x)-1)]!=x$v[1:(nrow(x)-2)]
Judger2<-x$v[2:(nrow(x)-1)] ==x$v[3:(nrow(x))]

start<-which(Judger1&Judger2)+1
end<-which((!Judger1)&(!Judger2))+1

ret<-data.frame(start=Index[start],end=Index[end],length=Index[end]-Index[start])
print(ret[ret$length>=minSize,])