आर में शिफ्ट मान की गणना कैसे करें (उदाहरण के साथ)


आप लैग मानों की गणना करने के लिए आर में dplyr पैकेज से लैग() फ़ंक्शन का उपयोग कर सकते हैं।

यह फ़ंक्शन निम्नलिखित मूल सिंटैक्स का उपयोग करता है:

ऑफसेट(x, n=1,…)

सोना:

  • x : मानों का सदिश
  • n : विलंबित पदों की संख्या

निम्नलिखित उदाहरण दिखाता है कि व्यवहार में स्थानांतरित मूल्यों की गणना करने के लिए इस फ़ंक्शन का उपयोग कैसे करें।

उदाहरण: आर में स्थानांतरित मूल्यों की गणना

मान लीजिए कि हमारे पास आर में निम्नलिखित डेटा फ्रेम है जो लगातार 10 दिनों में स्टोर की बिक्री की संख्या दिखाता है:

 #create data frame
df <- data. frame (day=1:10,
                 sales=c(18, 10, 14, 13, 19, 24, 25, 29, 15, 18))

#view data frame
df

   day sales
1 1 18
2 2 10
3 3 14
4 4 13
5 5 19
6 6 24
7 7 25
8 8 29
9 9 15
10 10 18

हम एक लैग कॉलम बनाने के लिए dplyr पैकेज से लैग() फ़ंक्शन का उपयोग कर सकते हैं जो प्रत्येक पंक्ति के लिए पिछले दिन की बिक्री प्रदर्शित करता है:

 library (dplyr)

#add new column that shows sales for previous day
df$previous_day_sales <- dplyr::lag(df$sales, n= 1 )

#view updated data frame
df

   day sales previous_day_sales
1 1 18 NA
2 2 10 18
3 3 14 10
4 4 13 14
5 5 19 13
6 6 24 19
7 7 25 24
8 8 29 25
9 9 15 29
10 10 18 15

यहां परिणाम की व्याख्या करने का तरीका बताया गया है:

  • ऑफ़सेट कॉलम में पहला मान NA है क्योंकि बिक्री कॉलम में कोई पूर्व मान नहीं है।
  • ऑफ़सेट कॉलम में दूसरा मान 18 है क्योंकि यह बिक्री कॉलम में पिछला मान है।
  • ऑफ़सेट कॉलम में तीसरा मान 10 है क्योंकि यह बिक्री कॉलम में पिछला मान है।

और इसी तरह।

हम पिछली स्थितियों की भिन्न संख्या के लिए अंतराल मान की गणना करने के लिए लैग() फ़ंक्शन में n तर्क का मान भी बदल सकते हैं:

 library (dplyr)

#add new column that shows sales for two days prior
df$previous_day_sales <- dplyr::lag(df$sales, n= 2 )

#view updated data frame
df

   day sales previous_day_sales
1 1 18 NA
2 2 10 NA
3 3 14 18
4 4 13 10
5 5 19 14
6 6 24 13
7 7 25 19
8 8 29 24
9 9 15 25
10 10 18 29

नोट : लीड कॉलम बनाने के लिए, लैग () फ़ंक्शन के बजाय dplyr पैकेज से लीड () फ़ंक्शन का उपयोग करें।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि R में अन्य सामान्य फ़ंक्शंस का उपयोग कैसे करें:

dplyr में n() फ़ंक्शन का उपयोग कैसे करें
Dplyr मेंcross() फ़ंक्शन का उपयोग कैसे करें
Dplyr में रीलोकेट() फ़ंक्शन का उपयोग कैसे करें
Dplyr में स्लाइस() फ़ंक्शन का उपयोग कैसे करें

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *