### 8.2.14 Régression logarithmique : logarithmic_regression

Pour approcher les données par une fonction logarithmique d’équation y=mln(x)+b, on utilise logarithmic_regression qui renvoie le couple (m,b).
logarithmic_regression a les mêmes arguments que covariance.
On tape :

evalf(logarithmic_regression([[1,1],[2,4],[3,9],[4,16]]))

Ou on tape :

evalf(logarithmic_regression([1,2,3,4],[1,4,9,16]))

On obtient :

10.1506450002,-0.564824055818

c’est donc la fonction logarithmique d’équation y=10.15ln(x)−0.565 qui approche au mieux les données.
On tape :

X:=[1,1.5,2,2.5,3,3.5,4,4.5,5,5.5,6,6.5,7,7.5,8]
Y:=[1.6,2.15,2.65,3.12,3.56,3.99,4.4,4.8,5.18,
5.58,5.92,6.27,6.62,7.06,7.3]
logarithmic_regression(X,Y)

On obtient :

2.83870854646,0.843078064152

c’est donc la fonction logarithmique d’équation y=0.84ln(x)+2.84 qui approche au mieux les données .
On vérifie en tapant :

linear_regression(ln(X),Y)

On obtient :

2.83870854646,0.843078064152

et le coefficient de corrélation est :

correlation(ln(X),Y)

On obtient :

0.977939822434

On peut aussi taper pour chercher une meilleur approximation :

logarithmic_regression(X,log(Y))

On obtient :

0.732351031846,0.467599676658

c’est donc la fonction logarithmique d’équation z=ln(y)=0.73ln(x)+0.47 qui approche au mieux les données.
On vérifie en tapant :

linear_regression(ln(X),ln(Y))

On obtient :

0.732351031846,0.467599676658

et le coefficient de corrélation est :

correlation(ln(X),ln(Y))

On obtient :

0.999969474543