With Multivariate REGRESS Trends berechnen und Werte vorhersagen
Vorgehensweise: Referenz: |
Die REGRESS-Methode leitet eine lineare Gleichung ab, die für eine Gruppe numerischer Datenpunkte am besten passt, und verwendet diese Gleichung, um eine neue Spalte in der Reportausgabe zu erstellen. Die Gleichung kann auf ein bis drei unabhängigen Variablen basieren.
Sie können mit multivariater Regression Trends berechnen und Werte vorhersagen. Diese Methode leitet eine lineare Gleichung ab, die für eine Gruppe numerischer Datenpunkte am besten passt, und verwendet diese Gleichung, um eine neue Spalte in der Reportausgabe zu erstellen. Die Gleichung kann auf ein bis drei unabhängigen Variablen basieren.
Diese Methode schätzt Werte, indem angenommen wird, dass die abhängige Variable (y, die neuen berechneten Werte) und die unabhängigen Variablen (x1, x2, x3) durch die folgende Gleichung in Beziehung stehen:
y = a1*x1 [+ a2*x2 [+ a3*x3]] + b
Wenn es eine unabhängige Variable gibt, stellt die Gleichung eine gerade Linie dar. Dies erzeugt dieselben Werte wie FORECAST mit der REGRESS-Methode. Wenn es zwei unabhängige Variable gibt, stellt die Gleichung eine Ebene dar, und mit drei unabhängigen Variablen stellt sie eine Hyperebene dar. Sie sollten diese Methode verwenden, wenn Grund dafür besteht, zu glauben, dass die abhängige Variable approximiert werden kann durch eine lineare Kombination der unabhängigen Variablen.
REGRESS verwendet eine Methode namens Gewöhnliche Kleinstquadrate, um Werte für die Koeffizienten zu berechnen (a1, a2, a3 und b), die die Summe der quadrierten Differenzen zwischen der resultierenden Linie, Ebene oder Hyperebene minimieren.
x
Vorgehensweise: Eine Multivariate lineare Regression-Spalte erstellen mit ReportPainter
-
Wählen Sie im Hauptfenster des ReportPainters ein numerisches BY-Feld aus.
-
Klicken Sie auf den Button Prognose.
-
Wählen Sie in der Dropdown-Liste Schritt 1: Eine Methode auswählen die Option Multivariate Regression aus.
-
Wählen Sie in der Dropdown-Liste Schritt 2: Die erste unabhängige Variable auswählen eine Variable aus. Sie können zusätzliche unabhängige Variable im Schritt 3 und im Schritt 4 auswählen.
-
Wählen Sie in der Dropdown-Liste Schritt 5: Die abhängige Variable auswählen eine Variable abhängige aus.
-
Klicken Sie auf OK.
x
Syntax: Eine Multivariate lineare Regression-Spalte erstellen mit WF-Sprache
ON {sortfield} RECAP y[/fmt] = REGRESS(n, x1, [x2, [x3,]] z);
Hierbei gilt:
- sortfield
Ist ein Feld in der Datenquelle. Es kann nicht dasselbe Feld sein wie einer der Parameter für REGRESS. Eine neue Lineare Regressionsgleichung wird immer dann abgeleitet, wenn sich der Wert des Sortierfeldes ändert.
- y
Ist die neue numerische Spalte, die berechnet wird, indem Sie die Regressionsgleichung anwenden. Sie können auf ein Feld mit diesem Namen weder DEFINE noch COMPUTE anwenden.
- fmt
Ist das Anzeigeformat für y. Wenn es weggelassen wird, ist das Defaultformat D12.2.
- n
Ist eine ganze Zahl zwischen 1 und 3, die die Anzahl der unabhängigen Variablen angibt.
- x1, x2, x3
Sind die Feldnamen, die als die unabhängigen Variablen verwendet werden sollen. Alle diese Variablen müssen numerisch und voneinander unabhängig sein.
- z
Ist ein vorhandenes numerisches Feld, von dem man annimmt, dass es etwa linear abhängig ist von den unabhängigen Variablen und verwendet wird, um die Regressionsgleichung abzuleiten.
x
Referenz: Verwendungshinweise für REGRESS
- Das Sortierfeld (By), das mit REGRESS verwendet wird, muss ein numerisches Format oder ein Datumsformat haben.
- REGRESS kann nicht für ein ACROSS-Feld verwendet werden.
- Wenn eine der unabhängigen Variablen auch ein Sortierfeld ist, kann darauf in der Anfrage nicht vor dem Sortierfeld REGRESS verwiesen werden.
- FORECAST und REGRESS können nicht in derselben Anfrage verwendet werden, und es wird nur ein REGRESS in einer Anfrage unterstützt. Nicht-REGRESS RECAP-Befehle werden unterstützt.
- Der RECAP-Befehl, der mit REGRESS verwendet wird, kann nur die REGRESS-Syntax enthalten. REGRESS erkennt keine Syntax nach dem schließenden Semikolon (;).
- Obwohl Sie Parameter an REGRESS mit einer Argumentliste in Klammern weiterreichen, ist REGRESS keine Funktion. Es kann gemeinsam mit einer vom Benutzer geschriebenen Unterroutine mit demselben Namen verwendet werden, solange auf die vom Benutzer geschriebene Unterroutine nicht in einem RECAP-Befehl verwiesen wird.
- BY TOTAL wird nicht unterstützt.
- MORE, MATCH, FOR und OVER werden nicht unterstützt.
- Wenn Sie REGRESS-Werte erzeugen, werden zusätzliche Spalten erstellt, die in der Reportausgabe nicht gedruckt werden. Die Anzahl und Platzierung dieser zusätzlichen Spalten hängt von der spezifischen Anfrage ab. Es wird daher die Verwendung von Spaltennotation in einer Anfrage, die REGRESS enthält, nicht unterstützt.
- SUMMARIZE und RECOMPUTE werden nicht unterstützt für dasselbe Sortierfeld, das für REGRESS verwendet wird.
- REGRESS wird nicht unterstützt für die FOCUS GRAPH-Funktion.
- Die linke Seite eines RECAP-Befehls, die für REGRESS verwendet wird, unterstützt das Attribut CURR, um ein Feld mit benannter Währung zu erstellen.
- Felder mit fehlenden Werten können in der Regression nicht verwendet werden.
- Größere Datenmengen erzeugen nützlichere Ergebnisse.
Beispiel: Eine Multivariate lineare Regression-Spalte erstellen
Die folgende Anfrage verwendet die Datenquelle GGSALES, um eine geschätzte DOLLARS-Spalte zu berechnen. Die Felder BUDUNITS, UNITS und BUDDOLLARS sind die unabhängigen Variablen. Das Feld DOLLARS bietet die tatsächlichen Werte, die geschätzt werden sollen:
DEFINE FILE GGSALES
YEAR/Y = DATE;
MONTH/M = DATE;
PERIOD/I2 = MONTH;
END
TABLE FILE GGSALES
PRINT BUDUNITS UNITS BUDDOLLARS DOLLARS
BY PERIOD
ON PERIOD
RECAP EST_DOLLARS/F8 = REGRESS(3, BUDUNITS, UNITS, BUDDOLLARS, DOLLARS);
WHERE CATEGORY EQ 'Coffee'
WHERE REGION EQ 'West'
WHERE UNITS GT 1600 AND UNITS LT 1700
END
Die Ausgabe ist:

Beispiel: Eine Multivariate lineare Regression-Spalte erstellen
Das folgende Beispiel verwendet die Datenquelle GGSALES, um eine geschätzte DOLLARS-Spalte zu berechnen. Die Felder BUDUNITS, UNITS und BUDDOLLARS sind die unabhängigen Variablen. Das Feld DOLLARS bietet die tatsächlichen Werte, die geschätzt werden sollen.
- Erstellen Sie eine neue Prozedur und öffnen Sie die Datei ggsales.mas im ReportPainter.
- Kicken Sie auf Report oben im ReportPainter-Fenster, und klicken Sie dann auf Define in der Dropdown-Liste.
Die Dialogbox Define wird geöffnet.
- Geben Sie MONTH in den Eingabebereich Feld ein, geben Sie M (ein Datumsformat) in den Eingabebereich Format ein, doppelklicken Sie dann DATE in der Felderliste, um es dem Bereich unter PERIOD hinzuzufügen, und klicken Sie dann auf Neu.
- Geben Sie PERIOD in den Eingabebereich Feld ein, geben Sie I2 (Ganze Zahl-Format) in den Eingabebereich Format ein, geben Sie dann MONTH in den Bereich unter PERIOD ein und klicken Sie dann auf OK.
Die Dialogbox Define wird geschlossen und Sie kehren zum ReportPainter zurück.
- Fügen Sie dem Report die Felder PERIOD, BUDUNITS, UNITS, BUDDOLLARS und DOLLARS hinzu.
- Wählen Sie das Feld PERIOD aus und klicken Sie auf den Button By.
- Klicken Sie auf den Button Where im Dropdown-Menü Where/If.
Der Expression Builder wird geöffnet.
- Wählen Sie CATEGORY im Datenabschnitt aus.
- Geben Sie CATEGORY EQ 'Coffee' in den Bereich Erweitert ein und klicken Sie auf Neu.
- Wählen Sie REGION im Datenabschnitt aus.
- Geben Sie REGION EQ 'West' in das Feld Formel ein und klicken Sie auf Neu.
- Geben Sie UNITS GT 1600 AND UNITS LT 1700 in das Feld Formel ein und klicken Sie auf OK.
- Klicken Sie auf den Button Prognose.
Das Prognosefenster wird geöffnet.
- Geben Sie in das Feld Feldname EST_DOLLARS ein.
- Wählen Sie in der Dropdown-Liste Schritt 1: Eine Methode auswählen Multivariate Regression aus.
- Wählen Sie in der Dropdown-Liste Schritt 2: Die erste unabhängige Variable auswählen BUDUNITS aus.
- Wählen Sie in der Dropdown-Liste Schritt 3: Eine andere unabhängige Variable auswählen UNITS aus.
- Wählen Sie in der Dropdown-Liste Schritt 4: Eine andere unabhängige Variable auswählen BUDDOLLARS aus.
- Wählen Sie in der Dropdown-Liste Schritt 5: Die abhängige Variable auswählen DOLLARS aus.
- Klicken Sie auf OK.
Wenn der Report ausgeführt wird, werden die Multivariate Regression-Werte in der Spalte EST_DOLLARS angezeigt. Die Ausgabe wird im folgenden Bild illustriert.
TABLE FILE GGSALES
PRINT BUDUNITS UNITS BUDDOLLARS DOLLARS
ON TABLE RECAP ESTDOLLARS/F8 = REGRESS(3,BUDUNITS, UNITS, BUDDOLLARS,
DOLLARS);
WHERE CATEGORY EQ 'Coffee'
WHERE REGION EQ 'West'
WHERE UNITS GT 1600 AND UNITS LT 1700
END