我有一个包含两列的数据框(数据并不总是相同)。
1 1
2 2
3 3
0 0
-1 -1
-2 -2
-3 -3
我想做的是为该列的前 10% 和该列的底部 10% 创建另一列,用作散点图的标签。
1 1
2 2
3 3 1
0 0
-1 -1
-2 -2
-3 -3 2
此外,它需要能够从任一列中选择并标记顶部/底部 10%
有什么想法吗?
最佳答案
你的问题有点含糊。 “jpeg 输出中使用的比例”是什么意思?意思是?两列总是相同吗?也许您正在寻找类似以下内容的内容:
> dat<-data.frame(a=c(-(1:3),0:3))
> low<-quantile(dat$a,.1)
> high<-quantile(dat$a,.9)
> dat$flag<-NA
> dat$flag[dat$a<=low]<-1
> dat$flag[dat$a>high]<-2
> dat
a flag
1 -1 NA
2 -2 NA
3 -3 1
4 0 NA
5 1 NA
6 2 NA
7 3 2
关于r - 条件列创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1934670/