Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.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
曲线与matlab的集成_Matlab_Math_False Positive - Fatal编程技术网

曲线与matlab的集成

曲线与matlab的集成,matlab,math,false-positive,Matlab,Math,False Positive,我试图用matlab计算假阳性率和假阴性率。我已经生成了一条s曲线,带有一个阈值(在某个点切割曲线的垂直线)。阈值左侧曲线下的所有值均为假阳性,而阈值右侧曲线下以外的所有值均为假阴性。我必须对假阳性曲线下的区域和从右到右的阈值区域(从曲线下到阈值右侧的区域)进行积分,以计算假阴性。在matlab中尝试以下代码时,我遇到了一个奇怪的错误 syms p; func = (1 - (1 - p^5)^10); areaOfRect = (1-threshold)*1;

我试图用matlab计算假阳性率和假阴性率。我已经生成了一条s曲线,带有一个阈值(在某个点切割曲线的垂直线)。阈值左侧曲线下的所有值均为假阳性,而阈值右侧曲线下以外的所有值均为假阴性。我必须对假阳性曲线下的区域和从右到右的阈值区域(从曲线下到阈值右侧的区域)进行积分,以计算假阴性。在matlab中尝试以下代码时,我遇到了一个奇怪的错误

    syms p;
    func = (1 - (1 - p^5)^10);
    areaOfRect = (1-threshold)*1; 
    fn = areaOfRect - int(func,p,0,threshold);
    fp = int(func,p,threshold,1);


fn = 2575908626830580620307480425353828014939901186516550645854841225649977931806217173152793134129 ......

fp = 20989145492538166675017041353401970126067731601439729556868060737768716969716535384....

这些输出非常奇特,这让我觉得我没有以正确的方式使用integrate函数。如果有任何帮助,我们将不胜感激。

看起来您只是得到了有理形式的精确解
a/b
,对浮点的求值应该与数值积分相匹配

fn_sym = double(fn)
fn_num = areaOfRect - quadl(@(p)(1 - (1 - p.^5).^10),0.01,threshold)
fp_sym = double(fp)
fp_num = quadl(@(p)(1 - (1 - p.^5).^10),threshold,1.01)

看起来你只是得到了有理形式的精确解,
a/b
,对浮点的求值应该与数值积分相匹配

fn_sym = double(fn)
fn_num = areaOfRect - quadl(@(p)(1 - (1 - p.^5).^10),0.01,threshold)
fp_sym = double(fp)
fp_num = quadl(@(p)(1 - (1 - p.^5).^10),threshold,1.01)

看起来你只是得到了有理形式的精确解,
a/b
,对浮点的求值应该与数值积分相匹配

fn_sym = double(fn)
fn_num = areaOfRect - quadl(@(p)(1 - (1 - p.^5).^10),0.01,threshold)
fp_sym = double(fp)
fp_num = quadl(@(p)(1 - (1 - p.^5).^10),threshold,1.01)

看起来你只是得到了有理形式的精确解,
a/b
,对浮点的求值应该与数值积分相匹配

fn_sym = double(fn)
fn_num = areaOfRect - quadl(@(p)(1 - (1 - p.^5).^10),0.01,threshold)
fp_sym = double(fp)
fp_num = quadl(@(p)(1 - (1 - p.^5).^10),threshold,1.01)

您的文字描述是:“阈值左侧曲线下的所有值都是误报”,但您的代码计算从
阈值到1.01(右侧)的积分。我无法判断哪一个是正确的。

您的文本描述中说:“阈值左侧曲线下的所有值都是误报”,但您的代码计算从
阈值到1.01(右侧)的积分。我无法判断哪一个是正确的。

您的文本描述中说:“阈值左侧曲线下的所有值都是误报”,但您的代码计算从
阈值到1.01(右侧)的积分。我无法判断哪一个是正确的。

您的文本描述中说:“阈值左侧曲线下的所有值都是误报”,但您的代码计算从
阈值到1.01(右侧)的积分。我不能判断哪个是正确的。

double
代替
eval
<代码>求值
应该尽可能避免。所以我所需要做的就是将fp和fn值转换为双倍?是的,谢谢你的检查方法。它们确实匹配。使用
double
而不是
eval
<代码>求值
应该尽可能避免。所以我所需要做的就是将fp和fn值转换为双倍?是的,谢谢你的检查方法。它们确实匹配。使用
double
而不是
eval
<代码>求值
应该尽可能避免。所以我所需要做的就是将fp和fn值转换为双倍?是的,谢谢你的检查方法。它们确实匹配。使用
double
而不是
eval
<代码>求值
应该尽可能避免。所以我所需要做的就是将fp和fn值转换为双倍?是的,谢谢你的检查方法。他们俩确实很般配。那是我的错误。我试过的东西不管用。不管怎样,我现在把它修好了。那是我的错误。我试过的东西不管用。不管怎样,我现在把它修好了。那是我的错误。我试过的东西不管用。不管怎样,我现在把它修好了。那是我的错误。我试过的东西不管用。反正我现在修好了。