Springen naar inhoud

Curve fitting in excel 2007


  • Log in om te kunnen reageren

#1

Cerium

    Cerium


  • >250 berichten
  • 449 berichten
  • Ervaren gebruiker

Geplaatst op 29 april 2010 - 10:31

Hallo,

Ik heb zopas een grafiek getekend in Excel, een spreidingsgrafiek. Daaraan heb ik een trendlijn toegevoegd (een veelterm van graad 4) en daarbij heb ik de vergelijking opgevraagd. Zie hieronder de grafiek met vergelijking:

grafiek.JPG


Als ik deze veelterm nu evalueer in x = 125 levert mij dat de waarde 1,10 op. Maar in de grafiek is duidelijk te zien dat de curve onder 1 blijft. Wat loopt er hier mis? Kan deze vergelijking dan niet gebruikt worden voor interpolatie? Als dat inderdaad niet gaat, hoe moet ik dit probleem dan wel aanpakken?

Alvast bedankt

Dit forum kan gratis blijven vanwege banners als deze. Door te registeren zal de onderstaande banner overigens verdwijnen.

#2

E.Desart

    E.Desart


  • >1k berichten
  • 2391 berichten
  • VIP

Geplaatst op 29 april 2010 - 10:41

De reden is dat Excel standaard (om visuele redenen) het aantal "significant digits" beperkt (in die getoonde formule).
Selecteer die formule en met je aantal decimalen symbool (in je toolbar), vergroot je gewoon het aantal digits na de komma. Wanneer alleen nog maar nullen verschijnen zitten je buiten Excels nauwkeurigheidslimiet.
Excel rekent met (of toont) ca 15 "significant digits". Die cijfers na de komma zijn behoorlijk belangrijk in dergelijke regressieformules. Ruwweg: Hoe hoger de macht van de variabele hoe belangrijker.

Veranderd door E.Desart, 29 april 2010 - 10:48

Eric

#3

Cerium

    Cerium


  • >250 berichten
  • 449 berichten
  • Ervaren gebruiker

Geplaatst op 29 april 2010 - 10:56

Bedankt voor je snelle reactie! Daar had ik ook al aan gedacht. Maar ik vind geen manier om de vergelijking van die polynoom in een cel te krijgen zodat ik er verder mee kan rekenen. Is dit eigenlijk wel mogelijk?

#4

E.Desart

    E.Desart


  • >1k berichten
  • 2391 berichten
  • VIP

Geplaatst op 29 april 2010 - 11:22

Werk jij met Engelse of Nederlandse Excel? (zou hier best standaard vermeld worden bij vragen).

In de Engelstalige: kijk naar de functies LOGEST en LINEST, die je alle parameters laten berekenen van zo'n regressie. Dit vraagt ook wat werk, want dit geeft geen simpele formule maar alle individuele parameters in een array.
Ik heb mijn macro nu niet geÔnstalleerd voor vertalingen van functies (Excel geherinstalleerd).

Sedert Excel 2003 werken alle statistische functie met dezelfde nauwkeurigheid als die Grafiektrendline.
Dit was niet zo voor Excel 2003 (is dus een belangrijke verbetering voor mensen die met statistiek werken).

Je kan echter ook die formule uit de grafiek kopiŽren en aanpassen.

Wanneer je dit echter dynamisch moet doen, moet je via die functies gaan en uit die losse parameters je eindformule samenstellen in een andere cel. Ik heb hier nu geen pasklaar voorbeeld.

Er bestaat wel een macro (maar ook die zou ik moeten gaan zoeken) die de formule uit die grafiek kan extraheren, maar ook deze werkt niet dynamisch als een formule. Deze macro werd gemaakt omdat tot Excel 2002 er een duidelijk verschil in nauwkeurigheid was tussen de trendlijnformule in de grafiek en de functieresultaten via het werkblad.
Met Excel 2003 is de statistische nauwkeurigheid van Excel sterk verbeterd (voor alle statistiek gerelateerde functies).

Veranderd door E.Desart, 29 april 2010 - 11:25

Eric

#5

Cerium

    Cerium


  • >250 berichten
  • 449 berichten
  • Ervaren gebruiker

Geplaatst op 29 april 2010 - 14:40

Bedankt voor al je hulp! Ik heb trouwens ook nog een alternatieve manier gevonden om de coŽfficiŽnten met een hoge nauwkeurigheid te pakken te krijgen. Ik werk trouwens met de NL versie van Excel 2007. Als je "rechtermuisklikt" op de vergelijking in de grafiek kan je naar opmaak van dat label gaan. Bij "getal" heb ik het aantal weergegeven decimalen verhoogd van 2 naar 30. Dan krijg je de coŽfficiŽnten tot op machineprecisie.

#6

E.Desart

    E.Desart


  • >1k berichten
  • 2391 berichten
  • VIP

Geplaatst op 29 april 2010 - 14:49

Ik vergat iets extreem belangrijk .....

Als je de gewone Excel grafiek gebruikt geeft die formule op deze grafiek STEEDS een formule gebaseerd op X waarden van 1 tot n (aantal rijen in je tabel).
Dwz dat jij je formule moet uitbreiden met een conversie van je reŽle x waarden naar deze 1 tot n.

Om dit probleem te voorkomen moet je je grafiek als een x-y scatter grafiek zetten (geeft hetzelfde visueel resultaat). Op die manier houdt die formule WEL rekening met jouw juiste x-as waarden.
Via de functies krijg je hetzelfde resultaat als met de scatter grafiek.

Als je dit niet weet of vergeet kan je behoorlijk de mist ingaan.

PS: Een en ander kan iets anders werken nu in Excel 2007 waar ik geen ervaring mee heb (nog nooit geÔnstalleerd)

Veranderd door E.Desart, 29 april 2010 - 14:52

Eric

#7

Extra Large

    Extra Large


  • 0 - 25 berichten
  • 1 berichten
  • Gebruiker

Geplaatst op 31 augustus 2011 - 11:55

Bedankt voor al je hulp! Ik heb trouwens ook nog een alternatieve manier gevonden om de coŽfficiŽnten met een hoge nauwkeurigheid te pakken te krijgen. Ik werk trouwens met de NL versie van Excel 2007. Als je "rechtermuisklikt" op de vergelijking in de grafiek kan je naar opmaak van dat label gaan. Bij "getal" heb ik het aantal weergegeven decimalen verhoogd van 2 naar 30. Dan krijg je de coŽfficiŽnten tot op machineprecisie.


Top! Nooit geweten. Ik heb hier al verschillende mensen naar laten kijken, maar nog nooit een antwoord op gehad. Ik worstel al jaren met dit vreemde fenomeen. Soms werkt de formule die Excel weergeeft wel en soms niet, precies zoals jij aangeeft. Net lukte het dus weer niet en ben ik gaan zoeken. Door jouw "truc" met de significante cijfers lukt het nu wel. ;) Hartelijk bedankt.





0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Gesponsorde vacatures

Vacatures