शुरू करेंमुफ़्त में शुरू करें

सब कुछ एक ही कॉल में

इस कोड को और भी reproducible बनाने के लिए, हम एक ऐसा फंक्शन बनाएँगे जो यह सब एक ही कॉल में कर दे। इस फंक्शन का एक skeleton हमने पहले से दे रखा है, अब इसे पूरा करना आपकी बारी है!

पिछले अभ्यासों में, हमने यह प्रक्रिया कई चरणों में लिखी थी। अब, हम इसे सिर्फ एक कॉल में करना चाहते हैं: इसके लिए हम ऐसा फंक्शन लिखेंगे जो URLs की एक list ले, और जो elements पहुंच योग्य (reachable) नहीं हैं, उनके नाम लौटाए।

एक बार जब आप यह फंक्शन लिख लेंगे, तो आप इसे सेव कर सकते हैं और जब भी आपको URLs की किसी list को clean करना हो, दोबारा इस्तेमाल कर सकते हैं। और चाहें तो इसे किसी पैकेज में भी डाल सकते हैं ;)

पिछले अभ्यास की urls list आपके workspace में उपलब्ध है।

यह अभ्यास पाठ्यक्रम का हिस्सा है

इंटरमीडिएट फ़ंक्शनल प्रोग्रामिंग विथ purrr

पाठ्यक्रम देखें

अभ्यास निर्देश

  • map() कॉल के अंदर, read_lines() का possibly() वेरिएशन बनाएँ जो अन्यथा 404 लौटाए।

  • आउटपुट के नाम सेट करें।

  • हर sublist को character vector में बदलने के लिए paste() फंक्शन का उपयोग करें और collapse आर्ग्युमेंट को " " पर सेट करें।

  • वे elements हटा दें जो 404 के बराबर हैं।

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

url_tester <- function(url_list){
  url_list %>%
    # Map a version of read_lines() that otherwise returns 404
    map( ___(___, otherwise = ___) ) %>%
    # Set the names of the result
    ___( urls ) %>% 
    # paste() and collapse each element
    map(___, ___ = " ") %>%
    # Remove the 404 
    ___(___) %>%
    names() # Will return the names of the good ones
}

# Try this function on the urls object
url_tester(urls)
कोड संपादित करें और चलाएँ