我的数据中有异常值,我不想删除。因此,我将其替换为5个百分点和95个百分点。 我只想对dataframe中的几列进行这种处理。我的dataframe df中有a,b,c,d,e,f列
d = {}
colslist = ['a','c','d']
for col in colslist:
d[col] = df.approxQuantile(col,[0.05,0.95],0.25)
print(col+" done")
现在仅用于a,c和d,我想将异常值替换为5%和95%
在R中,我们以这种方式执行:
fun <- function(x){
quantiles <- quantile( x, c(.05, .95 ) )
x[ x < quantiles[1] ] <- quantiles[1]
x[ x > quantiles[2] ] <- quantiles[2]
x
}
fun( yourdata )