Bonjour,
Tu peux utiliser la fonction polyfit (help polyfit). Voici un exemple de code (
fichier .m ; a partir de donnees vraiment stupides) :
Code:
clear;
% Donnees originales
a = [[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20];
[2 5 3 5 7 9 11 13 15 17 19 20 22 24 25 26 28 30 33 36 39]];
plot(a(1,:), a(2,:), 'd');
% Regression lineaire de degre 0 : f(x) = m*x
% Coupe donc l'axe en (0, 0)
p = polyfit(a(:,1), a(:,2), 0);
b(1,:) = a(1,:);
b(2,:) = a(1,:) * p;
% Regression lineaire d'ordre 1 : f(x) = m*x + n
p = polyfit(a(:,1), a(:,2), 1);
c(1,:) = a(1,:);
c(2,:) = (p(2) + a(1,:) * p(1));
plot(a(1,:), a(2,:), 'd', b(1,:), b(2,:), c(1,:), c(2,:));
title('Donnees et regressions lineaires');
legend('donnees', 'ordre 0', 'ordre 1');
Cela donne ce graphique-ci :