Retrouver une formule à partir d'une série de données

Salut les zonards !

Je me permets un petite bouteille à la mer car j’aimerai faire un truc pour mon boulot mais je me rend compte que je suis limité par mon niveau en math.

Est-il possible de retrouver une formule à partir d’une série de données ? Je m’explique : j’ai deux données d’entrée pour chaque individu d’une population, et via une formule -que je ne connais pas- je récupère une note sur 20 pour chacun de ces individus.

Les deux données sont supposées avoir un impact positif sur la note.

Je n’attends pas nécessairement la solution toute cuite, mais si quelqu’un pouvait me dire si c’est faisable et avec quels outils , ça m’éviterait de perdre plus de temps que la journée déjà passée à tâtonner en essayant de me rappeler le programme de math de terminale.

Merci à vous !

Ca me parait difficile il y a beaucoup de possibilités. Et on ne sait pas quelles fonctions sont impliquées (est-ce qu’il y a des ln, des cos, des bidules comme ça ? Ou est-ce que c’est simplement un polynome ?).
Tu n’aurais pas le contexte histoire de voir ? Ca ressemble aux résultats d’un QCM non ? Le nombre total de point dans la colonne A, éventuellement le % des questions répondues dans la colonne B…

M’enfin c’est chaud de trouver une formule avec ça.

Je dirais que c’est une régression linéaire à 2 variables.

Peux-tu en faire un tableau STP ? Un copier-coller du PDF me met tout sur une seule ligne.

Edit : les données :

Donnée A;Donnée B;Note 2300;29;19,44 1299;33;19,28 1160;46;19,2 1200;29;18,96 847;64;18,88 1511;21;18,8 950;29;18,65 891;25;18,49 1473;16;18,33 700;30;18,33 880;18;18,01 692;25;17,85 1898;12;17,77 963;14;17,77 793;18;17,69 674;17;17,29 817;13;16,97 300;23;16,57 802;12;16,57

http://www.sigmaplot.com/products/tablecurve2d/tablecurve2d.php

On s’en sert souvent au taff, ca genere meme le code et tout. Par contre, c’est un peu ardu a prendre en main.

FMP > ce sont les résultats d’une enquête, et j’aimerais comprendre la pondération des deux (et uniques) données sur la note finale.
Moe > Le forum ne m’autorise pas à uploader du excel
Ana-l > merci, je regarde !

Un petit graphique avec R et les données normalisées :[code]a = c(2300, 1299, 1160, 1200, 847, 1511, 950, 891, 1473, 700, 880, 692, 1898, 963, 793, 674, 817, 300, 802)
b = c(29, 33, 46, 29, 64, 21, 29, 25, 16, 30, 18, 25, 12, 14, 18, 17, 13, 23, 12)
note = c(19.44, 19.28, 19.2, 18.96, 18.88, 18.8, 18.65, 18.49, 18.33, 18.33, 18.01, 17.85, 17.77, 17.77, 17.69, 17.29, 16.97, 16.57, 16.57)

fit = lm (note ~ (a + b ))

summary(fit)

les coefficients :

coefficients(fit)

(Intercept) a b

15.909869560 0.001102325 0.042933814

donc note = a * 0.001102325 + b * 0.042933814 + 15.909869560

estimation avec ces coefficients :

ev = (a[1:19] * coefficients(fit)[« a »] + b[1:19] * coefficients(fit)[« b »]) + coefficients(fit)["(Intercept)"]

png("/tmp/plot.png")
plot(a / max(a))
points((b / max(b )), col=« red », pch = 2)
points((note / max(note)), col=« blue », pch = 3)
points((ev / max(ev)), col=« green », pch = 4)
dev.off()[/code]

Le résultat :

[sharedmedia=gallery:images:2490]

Le résultat après la régression linéaire :

[sharedmedia=gallery:images:2491]

Bilan : j’ai dû me gourer quelque part. :innocent:

Bon on va faire plus simple et simplement tracer deux courbes en mettant en ordonnées les notes à chaque fois et en abscisses les deux jeux de données.

Nous sommes donc en présence d’une équation de la forme a.x + b.y = z, où :

  • x et y sont les deux jeux de données
  • z les notes
  • a et b les coefficients qui pondèrent l’addition des deux

En prenant au hasard deux couples de données dans ta liste (remplaçant x et y donc) et ayant obtenu deux équations à deux inconnues (a et B) à l’aide d’un crayon à papier et d’une feuille tu trouveras le résultat.

Ou pas…ça peut aussi etre un truc du genre ax + aby = z ou encore ax + cosb = z, comme l’avait supposé Fmp.

du coup tu pars d’une mauvais hypothèse.

PS: après je te l’accorde, il est fort probable que ça soit du type ax+by=z mais on n’en est pas sûr et en math…

Ah pas con, l’idée d’une équation linéaire aussi simple ne m’avait même pas traversé l’esprit. Du coup je pense que je vais pouvoir trouver sans problème en me basant sur les ex æquo.

Les deux courbes semblent montrer le contraire. Les exemples que tu donnes : “ax + aby = z” équivaut à “ax + cy = z” où ab = c et il n’y en fait pas de degré de dépendance. Car de la même manière depuis l’équation “ax + by = z” tu pourras remettre b sous la forme a.c par exemple…

Pour l’équation du type “ax + b.cos(y) = z” ou “ax + b/x = z” ,ou autres, les deux premières courbes montrent la linéarité, la régularité et la décroissance.

Sans chercher midi à quatorze heure la seule solution est une somme de deux fonctions linéaire pondérées.

Toutefois une autre solution est possible sous la forme “ax + by + c = z”. Dans ce cas trois équations, trois inconnues, il faut prendre trois cas particuliers. Ou alors il faut essayer à deux et vérifier sur un troisième cas. Je miserais sur la dernière !

J’avais trouvé ça : note = a * 0.001102325 + b * 0.042933814 + 15.909869560 Cf. au-dessus.

En tous cas, la solution ne peut pas être de type ax + by + c = z (avec a,b,c constantes, x donnée de la colonne 1, y donnée de la colonne 2, et z résultat de la colonne 3).

En effet, on remarque que 3 candidats ont en deuxième colonne 29% : donc ça voudrait dire que leurs chiffres de première colonne “x” et leurs résultats “z” devraient être liés par une équation de la forme ax + n = z ( avec n = by + c, qui est une constante vu que y=29%).

Or, avec les couples (x;z) valant (950;18,65), (1200;18,96) et (2300;19,44), il est impossible de trouver a et n. C’est assez simple à comprendre : si on avait vraiment une relation a*x + n = z, ce serait un polynôme de premier degré, donc ces trois points devraient être alignés sur un graphique. Or, ça n’est pas le cas.

Du coup, la formule est au mieux de type ax² + bx + cy + d = z, si elle a la gentillesse d’être bêtement polynomiale… mais en fait non : en passant par une interpolation de Lagrange, j’ai trouvé a, b et (c29%+d), pour les cas où y=29%. Du coup, si on calcule ax² + bx + c29% + d pour un autre échantillon avec “y” différent de 29%, on devrait avoir une erreur sur le résultat égale à c(y-29%).

Cela signifie donc que deux échantillons ayant le même pourcentage “y” devraient avoir la même erreur sur le résultat, peu importe leur valeur “x”. Si on essaie pour les deux échantillons où y = 12%, les erreurs ne sont pas les mêmes. Caramba, encore raté !

Ca signifie que la formule présente des liens entre x et y, donc elle doit contenir des éléments genre xy, ax²*y, etc. Et encore, rien ne garantit qu’il n’y a pas de fonctions à la con genre cosinus ou logarithme. A mon humble avis, lâche l’affaire, ou essaie de retrouver celui qui a écrit la formule d’origine (surtout qu’une formule brute, sans aucune explication sur les choix de coefficients, c’est généralement inexploitable).

La réponse à la question est non. Les résultats d’une expérience ne suffisent pas à déterminer la loi correspondante. C’est pour ça que les théoriciens existent.

Ceci étant dis, au prix de quelques hypothèses (linéarité par exemple), on peut approximer les résultats avec une formule mathématique, ce qui a été fait au dessus “à l’aveugle”. Maintenant, si tu veux une réponse satisfaisante et exploitable, il faut que tu détermines les hypothèses nécessaires (et leurs limitations). Par exemple, est-ce que les paramètres A et B sont indépendants, est-ce qu’il y a linéarité entre le paramètres A et le résultat, etc… Et cela, il n’y a qu’un humain connaissant l’expérience qui peut le faire.

Tu as fait une hypothèse très hasardeuse : à savoir que tu as relié les points de tes graphiques par des segments. Or, qui te dit que ça en est ? Il n’y a aucune raison de le faire, on ne sait pas ce qui se passe entre le point ( 2300 ; 19,44) et le point (1299 ; 19,28) par exemple.
De plus tu fais deux graphiques séparés, alors que visiblement les colonnes A et B sont liées. Du coup je ne sais pas trop si ça peut nous indiquer quelque chose.

Bref, comme je l’ai dit dès le départ, on peut trouver une formule éventuellement polynomiale qui va répondre au bousin, mais d’une c’est compliqué parce qu’on ne sait même pas de quel degré peut-être le polynôme ; de deux ça ne restera qu’une approximation de toute façon.

Bref, sans connaissance précise de l’expérience (pour savoir à peu près ce qu’on cherche), c’est se triturer les méninges pour rien.

Oui ça me semble évident puisque les nombres de la colonne B sont des pourcentages. Qui, a priori (m’enfin c’est une hypothèse) doivent s’appliquer d’une manière ou d’une autre aux nombres de la colonne A.
Donc, les x et les y sont déjà liés par une fonction…

Je ne sais pas encore comment l’utiliser mais tu a 6 notes égale 2 part 2
Edit :
Dans tous les cas , quand le % augmente , la note augmente aussi.

Tu as tracé deux fois la même courbe avec des noms d’étiquette différent.
Le 0,64 n’a rien a faire entre 0,29 et 0,21