R 检查一个向量的至少 20% 是否具有特定值

R check if at least 20% of a vector has a particular value

假设我有一个长度为 x 的向量。我想检查此向量中至少 20% 的元素的值是否低于 0.00001。我该怎么做?

到目前为止,我知道我可以弄清楚如何获得向量的 20%,应该只是 length(vector)/5

我不确定如何做剩下的事情。有什么帮助吗?谢谢

试试这个:

percentage<-(length(which(x<.000001))/length(x))*100
if(percentage<20) { .....}

试试这个

if(sum(which(vector < 0.00001) == T) >= length(vector)/5) {
   --- check ---
}

另一个选项:

x <- 1:100
mean(x < 10) >= 0.2    # replace 10 with 0.00001 or whatever you need
#[1] FALSE

这利用了您可以对逻辑向量执行数学运算(例如取平均值)的事实。