在R

时间:2015-12-01 22:49:32

标签: r

我有一个包含值的数据集列。当给出新输入时,我想检查该列并找到该列中该输入值的百分位数。

我尝试过分位数功能。但分位数函数给出了第25个,第50个百分位数等的值。但我想要反过来。我想要给定值的百分位数。

以下是我可重现的例子,

data <- seq(90,100,length.out=1000)
input <- 97

我的输出应该是数据列中97的百分位数。这可能吗? 感谢

2 个答案:

答案 0 :(得分:3)

您还可以使用具有经验累积分布函数的更多统计版本:

ecdf(data)(input)

F <- ecdf(data)
F(input)

此方法还允许在input上进行矢量化。

答案 1 :(得分:2)

我认为您想要计算小于输入值的数据的分数:

mean(input>data)
## [1] 0.7