मैं असंगठित फ़ाइल पर प्रति घंटा वर्षा पर विश्लेषण कर रहा हूं।आर में समय श्रृंखला और एसटीएल: त्रुटि केवल univariate श्रृंखला की अनुमति है
Station_ID Guage_Type Lat Long Date Time_Zone Time_Frame H0 H1 H2 H3 H4 H5 H6 H7 H8 H9 H10 H11 H12 H13 H14 H15 H16 H17 H18 H19 H20 H21 H22 H23
1 4457700 HI 41.52 124.03 1948-07-01 8 LST 0 0 0 0 0 0 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0 0 0 0 0 0 0 0 0 0 0 0
2 4457700 HI 41.52 124.03 1948-07-05 8 LST 0 1 1 1 1 1 2.0000000 2.0000000 2.0000000 4.0000000 5.0000000 5.0000000 4 7 1 1 0 0 10 13 5 1 1 3
3 4457700 HI 41.52 124.03 1948-07-06 8 LST 1 1 1 0 1 1 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0 0 0 0 0 0 0 0 0 0 0 0
4 4457700 HI 41.52 124.03 1948-07-27 8 LST 3 0 0 0 0 0 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0 0 0 0 0 0 0 0 0 0 0 0
5 4457700 HI 41.52 124.03 1948-08-01 8 LST 0 0 0 0 0 0 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0 0 0 0 0 0 0 0 0 0 0 0
6 4457700 HI 41.52 124.03 1948-08-17 8 LST 0 0 0 0 0 0 0.3888889 0.3888889 0.3888889 0.3888889 0.3888889 0.3888889 6 1 0 0 0 0 0 0 0 0 0 0
कहाँ H23 के माध्यम से H0 प्रति दिन 24 घंटे का प्रतिनिधित्व करते हैं (पंक्ति)
का उपयोग करना: हालांकि, मैं पीछा के रूप में यह साफ है और एक dataframe (सीए 1 कहा जाता है) में संग्रहीत करना जो रूप ले लेता है कामयाब केवल सीए 1 (ऊपर dataframe), मैं 24 अंक के प्रत्येक दिन (पंक्ति) लेने के लिए और शेष दिनों यह खड़ी स्थानांतरित और श्रेणीबद्ध (पंक्तियाँ) एक चर करने के लिए है, जो मैं dat1 फोन:
> dat1[1:48,]
H0 H1 H2 H3 H4 H5 H6 H7 H8 H9 H10 H11 H12 H13 H14 H15 H16 H17 H18 H19 H20 H21 H22 H23 H0 H1 H2 H3 H4 H5 H6 H7 H8 H9 H10 H11 H12 H13 H14 H15 H16 H17 H18 H19 H20 H21 H22 H23
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 2 2 2 4 5 5 4 7 1 1 0 0 10 13 5 1 1 3
चर dat1 का उपयोग करना , मैं इसे समय श्रृंखला डेटा प्राप्त करने के लिए एक तर्क के रूप में इनपुट करता हूं:
> rainCA1 <- ts(dat1, start = c(1900+as.POSIXlt(CA1[1,5])$year, 1+as.POSIXlt(CA1[1,5])$mon),
frequency = 24)
कुछ बातें ध्यान रखें:
>dim(CA1)
[1] 5636 31
>length(dat1)
[1] 135264
इस प्रकार 5636 * 24 (कुल डेटा बिंदुओं [24] प्रति पंक्ति) = 135,264 कुल अंक। लंबाई (rainCA1) उपरोक्त बिंदुओं से सहमत है। हालांकि, अगर मैं एक अंत ts समारोह में, इस तरह के
>rainCA1 <- ts(dat1, start = c(1900+as.POSIXlt(CA1[1,5])$year, 1+as.POSIXlt(CA1[1,5])$mon),
end = c(1900+as.POSIXlt(CA1[5636,5])$year, 1+as.POSIXlt(CA1[5636,5])$mon),
frequency = 24)
के रूप में मैं, अंकों की 1134 कुल लंबाई मिल जहाँ मैं डेटा का एक बहुत याद आ रही है डाल दिया। मुझे लगता है कि यह उन तारीखों के कारण है जो निरंतर नहीं हैं और चूंकि मैं केवल शुरुआती बिंदु के लिए तर्क के रूप में महीने और वर्ष लागू करता हूं।
सतत, क्या मुझे लगता है कि सही रास्ता, अंत तर्क के बिना पहली ts गणना का उपयोग कर में, मैं इसे एसटीएल के इनपुट के रूप आपूर्ति:
>rainCA1_2 <-stl(rainCA1, "periodic")
दुर्भाग्य से, मैं कोई त्रुटि मिलती है:
Error in stl(rainCA1, "periodic") : only univariate series are allowed
जो मुझे समझ में नहीं आता है या इसके बारे में कैसे जाना है। हालांकि, अगर मैं टीएस फ़ंक्शन पर वापस आ जाता हूं और अंत तर्क प्रदान करता हूं, तो एसएलएल बिना किसी त्रुटि के ठीक काम करता है।
मैंने कई फ़ोरम में शोध किया है, लेकिन कोई भी (या मेरी समझ में) प्रति घंटा डेटा के डेटा विशेषताओं को प्राप्त करने के लिए एक अच्छा समाधान प्रदान करता है। अगर कोई मेरी मदद कर सकता है, तो मैं इसकी सराहना करता हूं। धन्यवाद!