Dav*_*.it 7 matlab curve octave area
我有data.txt两列和N行的文件,如下所示:
0.009943796 0.4667975
0.009795735 0.46777886
0.009623984 0.46897832
0.009564759 0.46941447
0.009546991 0.4703958
0.009428543 0.47224948
0.009375241 0.47475737
0.009298249 0.4767201
[...]
Run Code Online (Sandbox Code Playgroud)
文件中的每个值对应一个点坐标(x,y).如果绘制,则此点生成曲线.我想计算该曲线的曲线下面积(AUC).
所以我加载数据:
data = load("data.txt");
X = data(:,1);
Y = data(:,2);
Run Code Online (Sandbox Code Playgroud)
因此,X包含点的所有x坐标和Y所有y坐标.
我怎样才能计算曲线下面积(AUC)?
最简单的方法是梯形法则函数trapz。
如果您的数据已知是平滑的,您可以尝试使用辛普森规则,但 MATLAB 没有内置任何内容可用于通过辛普森规则集成数值数据。(&我不确定如何将它用于 x/y 数据,其中 x 不会稳定增加)