हर nested डेटासेट पर linear regression चलाना
अब जब आपने प्रत्येक देश के लिए डेटा को data कॉलम में अलग-अलग डेटासेट में बाँट दिया है, तो आपको इन प्रत्येक डेटासेट पर एक linear model फिट करना है.
purrr का map() फंक्शन किसी लिस्ट के हर आइटम पर एक फ़ॉर्मूला अप्लाई करके काम करता है, जहाँ . उस व्यक्तिगत आइटम का प्रतिनिधित्व करता है. उदाहरण के लिए, आप संख्याओं की एक लिस्ट के प्रत्येक मान में 1 जोड़ सकते हैं:
map(numbers, ~ 1 + .)
इसका मतलब है कि हर डेटासेट पर मॉडल फिट करने के लिए, आप यह कर सकते हैं:
map(data, ~ lm(percent_yes ~ year, data = .))
जहाँ . by_year_country के data कॉलम से प्रत्येक व्यक्तिगत आइटम का प्रतिनिधित्व करता है. याद करें कि data कॉलम का हर आइटम किसी एक विशिष्ट देश से संबद्ध एक डेटासेट है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
केस स्टडी: R में Exploratory Data Analysis
अभ्यास निर्देश
tidyrऔरpurrrपैकेज लोड करें.- Nesting के बाद,
mutate()के भीतरmap()फंक्शन का उपयोग करके हर डेटासेट (अर्थात्by_year_countryकेdataकॉलम के प्रत्येक आइटम) पर linear regression चलाएँ, जिसमेंpercent_yesकोyearका फंक्शन मानकर मॉडल करें. परिणामmodelकॉलम में सेव करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Load tidyr and purrr
# Perform a linear regression on each item in the data column
by_year_country %>%
nest(-country)