以我的数据帧,我有一个包含一系列位置值的列中:滨值到因素
DistData$LOC=c(0,0,0,25,25,35,35,45,45,55,55,55,65,65,65,75,75,75,100,100,100,REF1,REF1,REF2,REf3,REF3,REF3)
我想仓到这些因素,其中,值小于50是“接近”,50或更大是“FAR”并且所有REF *都是“REF”。
我已经试过转换为as.numeric(),然后切():
Zone = as.numeric(DistData$LOC)
Zone = cut(Zone, c(0,50,200,NA),labels=c("NEAR","FAR","REF"))
并试图一系列ifelse语句:
Zone = ifelse(Zone<50,"NEAR", ifelse(Zone>=50,"FAR", ifelse(is.na(Zone)<-"REF")))
还玩弄GSUB(),lapply ()和replace()没有成功。
任何援助将非常感激。
尝试'as.numeric(as.character(())',而不仅仅是'as.numeric'。你强迫你的因素基础整数值,而不是它代表文本上的距离。 – Zelazny7
是什么REF的含义?如果它意味着像“丢失的数据”,我会倾向于将REF转换为NA并将其他值转换为* ordered *因子类型,因为这些级别具有固有的顺序(Near
Ben