ProblemOptimal zwei variable lineare Regressionsberechnung
Am sucht die y = mx + b
Gleichung anzuwenden (wobei m SLOPE
ist, b INTERCEPT
) auf einen Datensatz, der in dem SQL-Code, wie gezeigt abgerufen wird. Die Werte aus der (MySQL) Abfrage sind:
SLOPE = 0.0276653965651912
INTERCEPT = -57.2338357550468
SQL-Code
SELECT
((sum(t.YEAR) * sum(t.AMOUNT)) - (count(1) * sum(t.YEAR * t.AMOUNT)))/
(power(sum(t.YEAR), 2) - count(1) * sum(power(t.YEAR, 2))) as SLOPE,
((sum(t.YEAR) * sum(t.YEAR * t.AMOUNT)) -
(sum(t.AMOUNT) * sum(power(t.YEAR, 2))))/
(power(sum(t.YEAR), 2) - count(1) * sum(power(t.YEAR, 2))) as INTERCEPT,
FROM
(SELECT
D.AMOUNT,
Y.YEAR
FROM
CITY C, STATION S, YEAR_REF Y, MONTH_REF M, DAILY D
WHERE
-- For a specific city ...
--
C.ID = 8590 AND
-- Find all the stations within a 15 unit radius ...
--
SQRT(POW(C.LATITUDE - S.LATITUDE, 2) + POW(C.LONGITUDE - S.LONGITUDE, 2)) < 15 AND
-- Gather all known years for that station ...
--
S.STATION_DISTRICT_ID = Y.STATION_DISTRICT_ID AND
-- The data before 1900 is shaky; insufficient after 2009.
--
Y.YEAR BETWEEN 1900 AND 2009 AND
-- Filtered by all known months ...
--
M.YEAR_REF_ID = Y.ID AND
-- Whittled down by category ...
--
M.CATEGORY_ID = '001' AND
-- Into the valid daily climate data.
--
M.ID = D.MONTH_REF_ID AND
D.DAILY_FLAG_ID <> 'M'
GROUP BY Y.YEAR
ORDER BY Y.YEAR
) t
Frage
Die folgenden Ergebnisse (die Start- und Endpunkte der Linie zu berechnen) erscheint falsch. Warum sind die Ergebnisse um ~ 10 Grad (z. B. Ausreißer, die die Daten verzerren)?
(1900 * 0,0276653965651912) + (-57,2338357550468) = -4,66958228
(2009 * 0,0276653965651912) + (-57,2338357550468) = -1,65405406
(Beachten Sie, dass die Daten nicht länger passen das Bild, der Code.)
Ich hätte erwartet, dass das Ergebnis um 1900 um 10 (nicht -4,67) und das Ergebnis 2009 um 11,50 (nicht -1,65) zu sein.
Verwandte Seiten
Gratulation. Vielleicht sollte jemand mit Ihnen über R http://www.r-project.org sprechen. Sie könnten es mit einem Einzeiler tun –
Denken Sie daran, dass Antwortvariablen in der Regression als unabhängig voneinander angenommen werden. Diese Annahme ist manchmal nicht angebracht, wenn die Daten im Laufe der Zeit erhoben werden (was in Ihrem Fall der Fall ist) und die Beobachtungen, die nahe beieinander liegen, verwandt sind. Ein Mangel an Unabhängigkeit verursacht keine Verzerrung bei den kleinsten Quadraten der Koeffizienten, aber Standardfehler werden ernsthaft beeinträchtigt. –
Google für "lineare Regression Annahmen" Unabhängigkeit "serielle Korrelation", d. H http://www.basic.northwestern.edu/statguidefiles/mulreg_ass_viol.html # Lack% 20of% 20independence –