मैं यह मान लेना चाहता हूं कि बाल्टिक सागर की समुद्री सतह का तापमान साल दर साल एक ही है, और फिर एक फ़ंक्शन / रैखिक मॉडल के साथ इसका वर्णन करें। मेरे पास विचार केवल एक दशमलव संख्या (या num_months / 12) के रूप में इनपुट वर्ष का था और उस समय के बारे में पता होना चाहिए कि तापमान क्या होना चाहिए। आर में इसे lm () फ़ंक्शन में फेंकने से, यह साइनसोइडल डेटा को नहीं पहचानता है, इसलिए यह सिर्फ एक सीधी रेखा पैदा करता है। इसलिए मैंने I () ब्रैकेट के भीतर पाप () फ़ंक्शन को रखा और फ़ंक्शन को मैन्युअल रूप से फिट करने के लिए कुछ मानों की कोशिश की, और जो मुझे चाहिए वह करीब हो जाता है। लेकिन समुद्र गर्मियों में तेजी से गर्म हो रहा है और फिर गिरावट में धीमी गति से ठंडा हो रहा है ... इसलिए मॉडल पहले साल गलत है, फिर कुछ वर्षों के बाद अधिक सही हो जाता है, और फिर भविष्य में मुझे लगता है कि यह अधिक हो जाता है और फिर से गलत।
मैं अपने लिए मॉडल का अनुमान लगाने के लिए आर कैसे प्राप्त कर सकता हूं, इसलिए मुझे स्वयं संख्याओं का अनुमान लगाने की आवश्यकता नहीं है? यहां कुंजी यह है कि मैं चाहता हूं कि यह साल-दर-साल उसी मूल्यों का उत्पादन करे, न कि केवल एक वर्ष के लिए सही हो। अगर मैं गणित के बारे में अधिक जानता था, तो शायद मैं इसे पाप के बजाय पॉइज़न या गाऊसी की तरह कुछ कर सकता हूं, लेकिन मुझे नहीं पता कि यह कैसे करना है। एक अच्छे उत्तर के करीब आने के लिए किसी भी मदद की बहुत सराहना की जाएगी।
यहां वह डेटा है जो मैं उपयोग करता हूं, और अब तक परिणाम दिखाने के लिए कोड:
# SST from Bradtke et al 2010
ToY <- c(1/12,2/12,3/12,4/12,5/12,6/12,7/12,8/12,9/12,10/12,11/12,12/12,13/12,14/12,15/12,16/12,17/12,18/12,19/12,20/12,21/12,22/12,23/12,24/12,25/12,26/12,27/12,28/12,29/12,30/12,31/12,32/12,33/12,34/12,35/12,36/12,37/12,38/12,39/12,40/12,41/12,42/12,43/12,44/12,45/12,46/12,47/12,48/12)
Degrees <- c(3,2,2.2,4,7.6,13,16,16.1,14,10.1,7,4.5,3,2,2.2,4,7.6,13,16,16.1,14,10.1,7,4.5,3,2,2.2,4,7.6,13,16,16.1,14,10.1,7,4.5,3,2,2.2,4,7.6,13,16,16.1,14,10.1,7,4.5)
SST <- data.frame(ToY, Degrees)
SSTlm <- lm(SST$Degrees ~ I(sin(pi*2.07*SST$ToY)))
summary(SSTlm)
plot(SST,xlim=c(0,4),ylim=c(0,17))
par(new=T)
plot(data.frame(ToY=SST$ToY,Degrees=8.4418-6.9431*sin(2.07*pi*SST$ToY)),type="l",xlim=c(0,4),ylim=c(0,17))