Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.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
Excel在R中的求解_R_Excel_Search_Package_Solver - Fatal编程技术网

Excel在R中的求解

Excel在R中的求解,r,excel,search,package,solver,R,Excel,Search,Package,Solver,我一直试图在r中找到类似于excel解算器的东西 例如,我有以下程序: L=2.4 UCL=L; LCL=-L ARL=1/(pnorm(LCL, mean = 0, sd = 1, lower.tail = TRUE)+pnorm(UCL, mean = 0, sd = 1, lower.tail = FALSE)) 我希望r搜索“L”的值,以使我的结果“ARL”接近例如200 在r中有这样做的方法吗 f <- function(L) { UCL=L; LCL=-L ARL=

我一直试图在
r
中找到类似于excel解算器的东西

例如,我有以下程序:

L=2.4
UCL=L; LCL=-L
ARL=1/(pnorm(LCL, mean = 0, sd = 1, lower.tail = TRUE)+pnorm(UCL, mean = 0, 
sd = 1, lower.tail = FALSE))
我希望
r
搜索“L”的值,以使我的结果“ARL”接近例如200

在r中有这样做的方法吗

f <- function(L) {
  UCL=L; LCL=-L
  ARL=1/(pnorm(LCL, mean = 0, sd = 1, lower.tail = TRUE)+pnorm(UCL, mean = 0, 
                                                               sd = 1, lower.tail = FALSE))
  ARL-200
}

uniroot(f,c(1,10))
所以解是L=2.807,需要13次迭代


所以解是L=2.807,需要13次迭代。

你基本上不是在寻找一个L值,它给出了标准法向曲线下的面积=0.0025吗?是的。在这个简单的例子中,我可以很容易地转到正态曲线并找到分位数,但我希望r尝试不同的值,并给出结果“L”,它给出了“ARL”,例如(199.9200.1)。Excel解算器的工作方式。我希望解决一些复杂的问题,这些问题不是直接的标准分位数点。然后使用
qnorm
qnorm对我所寻找的不起作用。我有一个复杂的问题,它不能收敛到标准的正常百分位数。我希望r做一些类似优化的事情,搜索所有可能的“L”值,生成“ARL”200。您可以使用黄金分割搜索算法轻松搜索。不确定R是否有一些内置函数来执行搜索。您基本上不是在寻找一个L值,该值给出标准法向曲线下的面积=0.0025吗?是的,我是。在这个简单的例子中,我可以很容易地转到正态曲线并找到分位数,但我希望r尝试不同的值,并给出结果“L”,它给出了“ARL”,例如(199.9200.1)。Excel解算器的工作方式。我希望解决一些复杂的问题,这些问题不是直接的标准分位数点。然后使用
qnorm
qnorm对我所寻找的不起作用。我有一个复杂的问题,它不能收敛到标准的正常百分位数。我希望r做一些类似优化的事情,搜索所有可能的“L”值,生成“ARL”200。您可以使用黄金分割搜索算法轻松搜索。不确定R是否有一些内置函数来执行搜索。谢谢Erwin Kalvelagen。谢谢Erwin Kalvelagen。
$root
[1] 2.807

$f.root
[1] -0.0003725

$iter
[1] 13

$init.it
[1] NA

$estim.prec
[1] 6.532e-05