Lineare Regression mit gewichteten Fehlerquadraten
17.01.2017 12:26:43
Bernd
Hallo Forum,
nun möchte ich mich an die Programmierung von Funktionen zum ersten Mal wagen und benötige bitte etwas Hilfe von euch.
Die Funktion soll die Steigung a der Geraden und den Achsenabschnitt b berechnen mit Hilfe des Solvers dies bedeutet, dass die Funktion eventuell den Solver enthält. Wenn dies ein K.O Kriterium ist für die per VBA zu programmierende Funktion, dann benötige ich ein Makro.
Mir ist klar, dass die Funktion jedes Mal neu rechnet, wenn ich in der Tabelle irgendetwas verändere.
Daher würde ich erst am Ende die Funktion einbauen in meine Tabelle und das Ganze dann durchrechnen lassen.
Ich möchte eine Funktion programmieren für eine Lineare Regression mit (im Beispiel exponentiell) gewichteten Fehlerquadraten.
In der beigefügten Datei ist ein komplettes Vergleichsbeispiel gezeigt. Ich möchte ein Funktion programmieren für die Berechnungen in den Spalten G bis K.
Dabei soll die Anzahl der Funktionswerte variabel sein. Die Variable nenne ich einmal N für die Anzahl der Funktionswerte.
Eine weitere Variable ist der Gewichtungsfaktor alfa für die exponentielle Gewichtung der Fehlerquadrate. Im Beispiel ist alfa = 0,5 in der Zelle I4.
Jetzt muss ich noch erklären, warum ich eine Funktion möchte. Das beigefügte Beispieltabellenblatt ist ein Beispiel aus einer langen Datenreihe.
Die x-Werte laufen in der Datenreihe von 1 bis z.B. 5000 und befinden sich in einer Spalte. Die y Werte der Funktion, durch die eine Regressionsgerade gelegt werden soll, befinden sich rechts daneben in der Nachbarspalte.
Diese beiden Spalten müssen übergeben werden in die Funktion (Array-Felde?, Achtung, damit habe ich auch keine Erfahrung). Dabei ist es wichtig, zu beachten, dass die Steigung a der Geradengleichung als auch der Achsenabschnitt b der Geradengleichung in der gleichen Zeile ausgegeben werden soll, in der auch der letzte Funktionswert steht.
Im beigefügten Beispiel sollte also z.B. die Steigung der Geraden in der Zelle L15 und der Achsenabschnitt in der Zelle M15 ausgegeben werden.
https://www.herber.de/bbs/user/110639.xlsx