आर में दैनिक डेटा को मासिक और वार्षिक डेटा में कैसे एकत्रित करें
कभी-कभी आप दैनिक डेटा को आर में साप्ताहिक, मासिक या वार्षिक डेटा में एकत्रित करना चाह सकते हैं।
यह ट्यूटोरियल बताता है कि लुब्रिडेट और डीपीएलआईआर पैकेज का उपयोग करके इसे आसानी से कैसे किया जाए।
उदाहरण: दैनिक डेटा को आर में एकत्रित करें
मान लीजिए कि हमारे पास आर में निम्नलिखित डेटा फ्रेम है जो लगातार 100 दिनों की अवधि में किसी आइटम की दैनिक बिक्री दिखाता है:
#make this example reproducible set.seed(1) #create data frame df <- data.frame(date = as.Date (" 2020-12-01 ") + 0:99, sales = runif (100, 20, 50)) #view first six rows head(df) dirty date 1 2020-12-01 27.96526 2 2020-12-02 31.16372 3 2020-12-03 37.18560 4 2020-12-04 47.24623 5 2020-12-05 26.05046 6 2020-12-06 46.95169
इस डेटा को एकत्रित करने के लिए, हम लुब्रिडेट पैकेज के फ़्लोर_डेट() फ़ंक्शन का उपयोग कर सकते हैं जो निम्नलिखित सिंटैक्स का उपयोग करता है:
floor_date (x, unit)
सोना:
- x: दिनांक वस्तुओं का एक वेक्टर।
- इकाई: चक्कर लगाने के समय की इकाई। विकल्पों में सेकंड, मिनट, घंटे, दिन, सप्ताह, महीने, द्विमासिक, तिमाही, अर्ध-वर्ष और वर्ष शामिल हैं।
निम्नलिखित कोड स्निपेट दिखाते हैं कि सप्ताह, महीने और वर्ष के अनुसार औसत बिक्री खोजने के लिए dplyr पैकेज में ग्रुप_बाय() और सारांश() फ़ंक्शन के साथ इस फ़ंक्शन का उपयोग कैसे करें:
प्रति सप्ताह औसत बिक्री
library (lubridate)
library (dplyr)
#round dates down to week
df$week <- floor_date (df$date, " week ")
#find average sales per week
df %>%
group_by (week) %>%
summarize (mean = mean (sales))
# A tibble: 15 x 2
week means
1 2020-11-29 33.9
2 2020-12-06 35.3
3 2020-12-13 39.0
4 2020-12-20 34.4
5 2020-12-27 33.6
6 2021-01-03 35.9
7 2021-01-10 37.8
8 2021-01-17 36.8
9 2021-01-24 32.8
10 2021-01-31 33.9
11 2021-02-07 34.1
12 2021-02-14 41.6
13 2021-02-21 31.8
14 2021-02-28 35.2
15 2021-03-07 37.1
प्रति माह औसत बिक्री
library (lubridate)
library (dplyr)
#round dates down to week
df$month <- floor_date (df$date, " month ")
#find average sales by month
df %>%
group_by (month) %>%
summarize (mean = mean (sales))
# A tibble: 4 x 2
month mean
1 2020-12-01 35.3
2 2021-01-01 35.6
3 2021-02-01 35.2
4 2021-03-01 37.0
प्रति वर्ष औसत बिक्री
library (lubridate)
library (dplyr)
#round dates down to week
df$year <- floor_date (df$date, " year ")
#find average sales by month
df %>%
group_by (year) %>%
summarize (mean = mean (sales))
# A tibble: 2 x 2
year means
1 2020-01-01 35.3
2 2021-01-01 35.7
ध्यान दें कि हम माध्य के आधार पर एकत्रीकरण करना चुनते हैं, लेकिन हम अपनी इच्छानुसार किसी भी सारांश आँकड़े का उपयोग कर सकते हैं, जैसे कि माध्यिका, मोड, अधिकतम, न्यूनतम, आदि।
अतिरिक्त संसाधन
निम्नलिखित ट्यूटोरियल बताते हैं कि आर में अन्य सामान्य कार्य कैसे करें:
आर में प्रति समूह माध्य की गणना कैसे करें
आर में संचयी योग की गणना कैसे करें
आर में टाइम सीरीज़ कैसे प्लॉट करें