r - Making a data frame of count of NA by variable for multiple data frames in a list -
मेरे पास 4 डेटा फ़्रेम युक्त सूची है:
& gt; नाम (listofdf) [1] "q12014local" "q12014national" "q22014local" "q22014national"
सभी डेटा फ़्रेमों में एक ही चर नाम है मैं एक नया डेटा फ्रेम बनाना चाहता हूं जो कि एनएएस की संख्या को वैरिएबल और डेटा फ्रेम के आधार पर गिना जाता है। परिणामी आउटपुट इस तरह दिखना चाहिए:
v1 v2 v3 v4 v5 v6 v7 q12014local 328 278 1786 0 0 12 1 q12014national 0 100 124 0 0 7 0 q22014 स्थान 0 0 0 0 0 28 9 0 q22014 अंतर्राष्ट्रीय 423 0 10 10 78 0 0
यहां एक प्रतिलिपि प्रस्तुत करने योग्य उदाहरण है:
& gt; Df1 & lt; - data.frame (v1 = c (1: 5), v2 = c ("सेब", "नाशपाती", एनए, "पीच", एनए), वी 3 = सी ("रविवार", "सोमवार" NA, NA, NA))
& gt; Df2 & lt; - data.frame (v1 = सी (2, 7, एनए, एनए, "9"), वी 2 = सी ("प्लम", एनए, "कीवी", एनए, "जैकफुट"), वी 3 = सी ( एनए, एनए, "शनिवार", एनए, "बुधवार"))
& gt; Df3 & lt; - डेटा.फ्रेम (v1 = c (12, एनए, एनए, एनए, 8), वी 2 = सी ("अनानास", "अमरूद", "लिट्ची", एनए, एनए), वी 3 = सी ("मंगलवार "," गुरुवार "," शुक्रवार ", एनए," सोमवार "))
& gt; Listofdf & lt; - सूची (df1, df2, df3)
अब तक मैं lapply (listofdf, function (x) table (is.na (x [, [ 15])))
सूची में प्रत्येक डेटा फ्रेम की एनएएस की जांच करने के लिए और यह बोझिल है!
उदाहरण में दिखाया गया है, NAs
तार हैं
नाम (listofdf) & lt; - c ("q12014local", "q12014national", "q22014local") as.data.frame (टी (sapply (listofdf, फ़ंक्शन (x) colSums (x == 'NA')))) # v1 v2 v3 # q12014local 0 2 3 # q12014national 2 2 3 # q22014local 3 2 1
वास्तविक एनएएस
t (sapply (listofdf, function (x) colSums (is.na (x))))
Comments
Post a Comment