मैं स्टैक ओवरफ्लो के लिए नया हूं और आर के लिए बिल्कुल नया हूं लेकिन लंबे और कठिन खोजे हैं और निम्नलिखित प्रश्न का उत्तर नहीं मिल पा रहे हैं।मैं आर में एक समय श्रृंखला (एक्सटीएस या चिड़ियाघर) कैसे बदल सकता हूं?
मेरे पास कई डेटा फ़ाइलें हैं जो एक समय श्रृंखला के खिलाफ तापमान हैं। मैं एक ZOO ऑब्जेक्ट के रूप में CSV आयात कर रहा हूं और फिर XTS में परिवर्तित कर रहा हूं। एक सही फ़ाइल ऐसा दिखाई देता है घंटे पर रीडिंग और आधे घंटे के साथ:
>head(master1)
S_1
2010-03-03 00:00:00 2.8520
2010-03-03 00:30:00 2.6945
2010-03-03 01:00:00 2.5685
2010-03-03 01:30:00 2.3800
2010-03-03 02:00:00 2.2225
2010-03-03 02:30:00 2.0650
लेकिन कुछ पर समय मूल्य से थोड़ा बाहर हैं - 23:59:00 नहीं 00:00:00, या 00 यानी: 00:30:00 के बजाय 2 9: 00।
>head(master21)
S_21
2010-03-04 23:59:00 -0.593
2010-03-05 00:29:00 -0.908
2010-03-05 00:59:00 -1.034
2010-03-05 01:29:00 -1.223
2010-03-05 01:59:00 -1.349
2010-03-05 02:29:00 -1.538
मैं इन समय श्रृंखला को दूर करने के, के रूप में मिनट का अंतर अपने विश्लेषण के लिए महत्वपूर्ण नहीं है चाहता हूँ और मैं अंत में फ़ाइलों को मर्ज करना चाहते हैं, इसलिए प्रत्येक timeseries एक ही समय की जरूरत है।
मैं एक आदेश है कि बस कह सकते हैं "1 मिनट से आगे समय श्रृंखला बदलाव है, लेकिन डेटा स्तंभ (जैसे S_21) को बदल नहीं करना चाहती। मैं gsub()
आसान परिवर्तन पर साथ कुछ भाग्य पड़ा है, और एक विचार जटिल रीजिक्स को ज़ूओ या एक्सटीएस में परिवर्तित करने से पहले डेटा को बदलने के लिए। मैंने lag()
और diff()
पढ़ा है लेकिन वे समय श्रृंखला के सापेक्ष डेटा मानों को स्थानांतरित करने लगते हैं; अगर मैं गलत हूं तो कृपया मुझे सही करें।
कोई मदद इस मुद्दे को हल करने की बहुत सराहना की जाएगी।