एकाधिक से डेटा तालिका बनाने के लिए r में rbindlist का उपयोग कैसे करें
R में rbindlist() फ़ंक्शन का उपयोग कई डेटा.टेबल या डेटा.फ़्रेम ऑब्जेक्ट की सूची से डेटा.टेबल बनाने के लिए किया जा सकता है।
यह फ़ंक्शन निम्नलिखित मूल सिंटैक्स का उपयोग करता है:
rbindlist(l, use. names ="check", fill= FALSE , idcol= NULL )
सोना:
- एल : डेटा.टेबल, डेटा.फ़्रेम या सूची ऑब्जेक्ट वाली सूची।
- उपयोग.नाम : TRUE कॉलम नामों से जुड़ता है। असत्य स्थिति से बंधता है।
- fill : TRUE लुप्त मानों को NA से भरता है।
- idcol : एक कॉलम बनाता है जो दर्शाता है कि ये पंक्तियाँ किस सूची आइटम से आती हैं।
निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस फ़ंक्शन का उपयोग कैसे करें।
उदाहरण: डेटा तालिका बनाने के लिए rbindlist का उपयोग करें
मान लीजिए कि हमारे पास R में डेटा.टेबल और डेटा.फ़्रेम ऑब्जेक्ट की निम्नलिखित सूची है:
library (data.table) #create data frames and data tables data1 <- data. table (team=c('A', 'B', 'C'), dots=c(22, 27, 38)) data2 <- data. table (team=c('D', 'E', 'F'), dots=c(22, 14, 20)) data3 <- data. frame (team=c('G', 'H', 'I'), dots=c(11, 15, 18)) #view data frames and data tables print (data1) print (data2) print (data3) team points 1: At 22 2:B27 3: C 38 team points 1:D22 2:E14 3:F20 team points 1 G 11 2:15 a.m. 3 I 18
हम data.table और data.frame ऑब्जेक्ट की सूची को एक ही data.table में बाइंड करने के लिए निम्नलिखित rbindlist() फ़ंक्शन का उपयोग कर सकते हैं:
#define list of objects to bind together data_list <- list(data1, data2, data3) #bind together list of objects big_data <- rbindlist(data_list) #view result big_data team points 1: At 22 2:B27 3: C 38 4:D22 5:E14 6:F20 7:G 11 8:15 a.m. 9: I 18
परिणाम एक डेटा.टेबल ऑब्जेक्ट है जिसमें नौ पंक्तियाँ हैं जिनमें हमारे द्वारा प्रदान की गई वस्तुओं की सूची की पंक्तियाँ शामिल हैं।
हम यह सत्यापित करने के लिए क्लास() फ़ंक्शन का भी उपयोग कर सकते हैं कि परिणाम वास्तव में एक डेटा.टेबल ऑब्जेक्ट है:
#view class of resulting object
class(big_data)
[1] "data.table" "data.frame"
हम देखते हैं कि परिणाम वास्तव में एक data.table ऑब्जेक्ट है।
rbindlist का उपयोग करने का लाभ
rbindlist का उपयोग करने का विकल्प आधार R में rbind फ़ंक्शन के साथ do.call का उपयोग करना होगा:
#use rbind to bind together list of objects do. call (" rbind ", data_list) team points 1: At 22 2:B27 3: C 38 4:D22 5:E14 6:F20 7:G 11 8:15 a.m. 9: I 18
यह कोड समान परिणाम उत्पन्न करता है लेकिन यह पता चलता है कि rbindlist काफी तेज़ है, विशेष रूप से अत्यधिक बड़े डेटा.टेबल या डेटा.फ़्रेम ऑब्जेक्ट के लिए।
अतिरिक्त संसाधन
निम्नलिखित ट्यूटोरियल बताते हैं कि आर में अन्य सामान्य ऑपरेशन कैसे करें:
R में किसी तालिका को डेटा फ़्रेम में कैसे परिवर्तित करें
R में डेटा फ़्रेम में पंक्तियाँ कैसे जोड़ें
आर में डेटा फ़्रेम को कैसे विभाजित करें