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

डेटासेट को बाँटना

एक पिछले अभ्यास में, आपने पाया था कि प्रति ट्वीट रीट्वीट्स की औसत संख्या 3.3 है। इस अभ्यास में, हम देखेंगे कि कितने ट्वीट्स इस औसत से ऊपर हैं और कितने नीचे।

ऐसा करने के लिए, हम पहले एक mapper बनाएँगे जो जाँचता है कि .x 3.3 से ऊपर है या नहीं। फिर हम map_at() को प्रीफिल करेंगे, जहाँ .at "retweet_count" होगा, और .f पहले हमारा बनाया हुआ mapper होगा, और दूसरी बार उसी mapper का negation होगा।

ध्यान दें कि इस कोर्स के बनते समय के बाद से purrr का व्यवहार बदल गया है, और partial() में .f और map_at() में .f के बीच argument clash से बचने के लिए, आपको quasi-quotation equals ऑपरेटर := (कभी-कभी "walrus ऑपरेटर" भी कहा जाता है) का इस्तेमाल करना होगा। इस अभ्यास के उद्देश्य से, आपको बस इतना जानना है कि := = की तरह काम करता है, लेकिन यह partial() को बता देता है कि argument को अपने पास रखने के बजाय map_at() को पास करना है।

इन टूल्स को बनाने के बाद, हम इन्हें non_rt ऑब्जेक्ट पर इस्तेमाल करेंगे, जो rstudioconf डेटासेट से "original tweets" का extraction है।

purrr आपके लिए लोड कर दिया गया है.

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

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

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

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

  • mean_above बनाएँ, एक mapper जो जाँचता है कि .x 3.3 से ऊपर है।

  • map_at() के दो संस्करण प्रीफिल करें: एक "retweet_count" और mean_above के साथ, और दूसरा "retweet_count" और mean_above के negation के साथ।

  • इन दोनों प्रीफिल्ड फंक्शंस को non_rt पर map करें, और केवल "retweet_count" एलिमेंट्स रखें।

  • दोनों परिणामों का आकार निकालें.

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

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

# Create mean_above, a mapper that tests if .x is over 3.3
mean_above <- ___(~ ___)

# Prefil map_at() with "retweet_count", mean_above for above, 
# and mean_above negation for below
above <- partial(___, .at = "retweet_count", .f := ___ )
below <- partial(___, .at = "retweet_count", .f := ___ )

# Map above() and below() on non_rt, keep the "retweet_count"
ab <- ___(non_rt, ___) %>% ___("retweet_count")
bl <- ___(non_rt, ___) %>% ___("retweet_count")

# Compare the size of both elements
___(ab)
___(bl)
कोड संपादित करें और चलाएँ