sorunoptimum iki değişkenli doğrusal regresyon hesaplama
Am SQL kod gösterildiği gibi alınan bir veri kümesi için (m SLOPE
burada b INTERCEPT
olan) y = mx + b
denklem uygulamak için ideal. (MySQL) sorgudan değerler şunlardır:
SLOPE = 0.0276653965651912
INTERCEPT = -57.2338357550468
SQL Kodu
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
Soru
aşağıdaki sonuçlarla (çizginin başlangıç ve bitiş noktalarını hesaplamak için) yanlış görünüyor. Sonuçlar neden yaklaşık 10 derecedir (ör., Verileri ayıklayan aykırı değerler)?
(1900 * 0,0276653965651912) + (-57,2338357550468) -4,66958228
(2009 * 0,0276653965651912) + (-57,2338357550468) =
-1,65405406 (Not = Veri yok olduğu görüntü ile daha uzun eşleşir, kod.)
1900 sonucunun 10 civarında olacağını (-4.67 değil) ve 2009 sonucunun 11.50 (-1.65 değil) olmasını beklerdim.
İlgili Siteler
Tebrikler:
aşağıdaki (kod aslında yanlış olabilir bu yüzden, SQL sözdizimi ve geçici değişkenler hakkında çok hatırlamıyorum lütfen bağışlayın aslında) gibi bir şey yapardı. Belki birileri sizinle R hakkında konuşmalıdır. Http://www.r-project.org/ Tek liner ile yapabilirsin –
Regresyondaki yanıt değişkenlerinin birbirinden bağımsız olduğu varsayılsın. Bu varsayım, verilerin zaman içinde toplanması (sizin durumunuzda doğru olanı) ve birbirine yakın olan gözlemlerin birbiriyle ilişkili olması durumunda bazen uygun değildir. Bağımsızlık eksikliği, katsayıların en küçük kareler tahminlerini göstermez, ancak standart hatalar ciddi şekilde etkilenir. –
google "lineer regresyon varsayımları" bağımsızlığı için "seri korelasyon", yani http://www.basic.northwestern.edu/statguidefiles/mulreg_ass_viol.html # Lack% 20of% 20independence –