我已嵌合的功能到我的数据:哪里函数等于一定值
BCF.plot <- function(x) {
vv[2] +((vv[3]/(2*(1-vv[4])))*(cos(x-vv[1])-vv[4]+abs(cos(x-vv[1])-vv[4])))
}
这是基线(B)余弦波,即具有在其顶部上的余弦波的基准。现在我在Y轴上有一个确定的值(dlmo_val),我想知道哪个x值对应于它。我已经试过这样的事情:
BCF.dlmo <- function(x, dlmo_val = 0) {
vv[2] +((vv[3]/(2*(1-vv[4])))*(cos(x-vv[1])-vv[4]+abs(cos(x-vv[1])-vv[4])))-b-dlmo_val ## find point where function minus baseline & dlmo_val is 0
}
vv = c(2.3971780, 2.0666526, 11.1775231, 0.7870128)
b = 2.066653
H = 11.17752
dlmo_val = 0.4*H ## dlmo*peak height above baseline, H is result from optimisation
uniroot(BCF.dlmo, c(0.2617994, 6.021386), dlmo_val=dlmo_val) ## lower & upper are min(x) and max(x)
然而,uniroot告诉我
"...values at end points not of opposite sign"
我真的不知道如何去了解这一点。任何建议都比欢迎!
什么是'B'和'^ h '等于? –
对不起,忘了这个,并相应地编辑了这个帖子...... –
'curve(BCF.dlmo(x,dlmo_val = dlmo_val),from = 0.2617994,to = 6.021386)'显示函数等于零 - 你想找到他们两个吗?只有一个? –