आर में मरम्मत कैसे करें: प्रतिस्थापन में एक्स पंक्तियां हैं, डेटा में वाई है


R का उपयोग करते समय आपके सामने एक त्रुटि संदेश आ सकता है:

 Error in `$<-.data.frame`(`*tmp*`, conf_full, value = c("West", "West",: 
  replacement has 3 rows, data has 5

यह त्रुटि तब होती है जब आप डेटा फ़्रेम में एक नया कॉलम जोड़ने का प्रयास करते हैं जिसका मान मौजूदा कॉलम पर आधारित होता है, लेकिन पहले नया कॉलम बनाने में असमर्थ होता है।

निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस त्रुटि को कैसे हल किया जाए।

त्रुटि को पुन: उत्पन्न कैसे करें

मान लीजिए कि हम R में निम्नलिखित डेटा फ़्रेम बनाते हैं:

 #create data frame
df <- data. frame (conference=c('W', 'W', 'W', 'E', 'E'),
                 points=c(99, 90, 86, 88, 95),
                 assists=c(33, 28, 31, 39, 34))	

#view data frame
df

  conference points assists
1 W 99 33
2 W 90 28
3 W 86 31
4 E 88 39
5 E 95 34

अब मान लीजिए कि हम डेटा फ़्रेम में conf_full नामक एक नया कॉलम जोड़ने का प्रयास करते हैं:

 #attempt to create new column based on conference name
df$conf_full[which(df$conference==' W ')] <- ' West '
df$conf_full[which(df$conference==' E ')] <- ' East '

Error in `$<-.data.frame`(`*tmp*`, conf_full, value = c("West", "West",: 
  replacement has 3 rows, data has 5

हमें एक त्रुटि प्राप्त हो रही है क्योंकि वेरिएबल नाम conf_full अभी तक मौजूद नहीं है, जिसका अर्थ है कि हम अभी तक इस कॉलम में मान निर्दिष्ट नहीं कर सकते हैं।

त्रुटि से कैसे बचें

इस त्रुटि से बचने के लिए, हम पहले conf_full वैरिएबल बना सकते हैं और इसे केवल NA का मान निर्दिष्ट कर सकते हैं:

 #create conf_full variable
df$conf_full <- NA

अब चूँकि वेरिएबल मौजूद है, हम इसे मान निर्दिष्ट कर सकते हैं:

 #create new column based on conference
df$conf_full[which(df$conference==' W ')] <- ' West '
df$conf_full[which(df$conference==' E ')] <- ' East '

#view updated data frame
df

  conference points assists conf_full
1 W 99 33 West
2 W 90 28 West
3 W 86 31 West
4 E 88 39 East
5 E 95 34 East

ध्यान दें कि इस बार हमें कोई त्रुटि नहीं मिल रही है क्योंकि हमने मान निर्दिष्ट करने का प्रयास करने से पहले conf_full वैरिएबल बनाया था।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि आर में अन्य सामान्य त्रुटियों को कैसे ठीक किया जाए:

आर में कैसे ठीक करें: तर्कों में अलग-अलग संख्या में लाइनें शामिल होती हैं
आर में कैसे ठीक करें: अप्रयुक्त तर्कों को चुनने में त्रुटि
आर में मरम्मत कैसे करें: प्रतिस्थापन की लंबाई शून्य है

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *