Saya memiliki file data.txt
dengan dua kolom dan N baris, seperti ini:
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
[...]
Setiap pasangan nilai dalam file tersebut berhubungan dengan satu koordinat titik (x,y). Jika diplot, titik-titik ini akan menghasilkan sebuah kurva. Saya ingin menghitung area di bawah kurva (AUC) dari kurva ini.
Jadi saya memuat datanya:
data = load("data.txt");
X = data(:,1);
Y = data(:,2);
Jadi, X
berisi semua koordinat x dari titik-titik, dan Y
semua koordinat y.
Bagaimana cara menghitung luas area di bawah kurva (AUC)?
Cara termudah adalah dengan menggunakan fungsi aturan trapesium trapz
.
Jika data Anda diketahui mulus, Anda dapat mencoba menggunakan aturan Simpson, tetapi tidak ada yang built-in pada MATLAB untuk mengintegrasikan data numerik melalui aturan Simpson. (Saya tidak yakin bagaimana cara menggunakannya untuk data x/y di mana x tidak bertambah secara konstan)