Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我的R函数用于找出人口的百分比在平均值的k标准偏差范围内,但它不起作用_R_Loops - Fatal编程技术网

我的R函数用于找出人口的百分比在平均值的k标准偏差范围内,但它不起作用

我的R函数用于找出人口的百分比在平均值的k标准偏差范围内,但它不起作用,r,loops,R,Loops,有什么问题吗?这里有一个简单的函数,可以实现您想要的功能。对于这样的任务,您应该使用矢量化函数以避免循环。它还使您的代码更清晰,更易于阅读 whatpercent(mydata,1) whatpercent(mydata,2) whatpercent(mydata,3) ... whatpercent这里有一个简单的函数,可以实现您想要的功能。对于这样的任务,您应该使用矢量化函数以避免循环。它还使您的代码更清晰,更易于阅读 whatpercent(mydata,1) whatpercent(m

有什么问题吗?

这里有一个简单的函数,可以实现您想要的功能。对于这样的任务,您应该使用矢量化函数以避免循环。它还使您的代码更清晰,更易于阅读

whatpercent(mydata,1) whatpercent(mydata,2) whatpercent(mydata,3) ...

whatpercent这里有一个简单的函数,可以实现您想要的功能。对于这样的任务,您应该使用矢量化函数以避免循环。它还使您的代码更清晰,更易于阅读

whatpercent(mydata,1) whatpercent(mydata,2) whatpercent(mydata,3) ...

whatpercent-Try
for(i in 1:length(x)){..}
。你不能循环你的代码。是的,ofc!但是现在我得到了length(vec)>=length(x)你定义函数取一个参数,
x
,但是你在调用它时提供了两个参数(例如,
whatpercent(mydata,1)
)。如前所述,函数只检查值是否小于或等于平均值以上的一个标准偏差。“k”在哪里?请阅读相关信息以及如何给出答案。这将使其他人更容易帮助您。请尝试
for(i in 1:length(x)){….}
。你不能循环你的代码。是的,ofc!但是现在我得到了length(vec)>=length(x)你定义函数取一个参数,
x
,但是你在调用它时提供了两个参数(例如,
whatpercent(mydata,1)
)。如前所述,函数只检查值是否小于或等于平均值以上的一个标准偏差。“k”在哪里?请阅读相关信息以及如何给出答案。这将使其他人更容易帮助您。有没有想过在调用
ifelse
之前存储
mean(x)
sd(x)
是否更有效(对于大向量)?没有必要使用
ifelse
。只需使用条件即可。正确,更简单;)关于在调用
ifelse
之前存储
mean(x)
sd(x)
是否会更有效(对于大向量),您有什么想法吗?不需要使用
ifelse
。只需使用条件即可。正确,更简单;)
whatpercent <- function(x, k) {
    mean(abs(x - mean(x)) <= sd(x) * k)
}

#Example
x <- rnorm(100)
whatpercent(x,2)
[1] 0.95