我有一个包含 250 万个 obs 的 data.frame。32 个变量,所有因素。一个变量由 0 到 999 之间的数字组成。我想将 99 以上的所有数字转换为 NA,因为该模型只接受 2 位数字。
谢谢,
蒂姆
######making example data set######
ex=matrix(as.factor(rnorm(6,100,10)),3,2)
ex
# [,1] [,2]
# [1,] 113.29893 101.54136
# [2,] 91.55164 101.45872
# [3,] 101.14473 88.19593
ex2=data.frame(ex)
###### solution ######
ex3=apply(ex2,2,as.numeric)
ex3[ex3>99]=NA
ex3
# X1 X2
# 1 NA NA
# 2 91.55164 NA
# 3 NA 88.19593