आर में कैसे ठीक करें: तर्क शून्य लंबाई है
R का उपयोग करते समय आपके सामने एक त्रुटि संदेश आ सकता है:
Error in if (x < 10) {: argument is of length zero
यह त्रुटि आम तौर पर तब होती है जब आप R में if स्टेटमेंट में तार्किक तुलना करने का प्रयास करते हैं, लेकिन तुलना में आप जिस वेरिएबल का उपयोग कर रहे हैं उसकी लंबाई शून्य है।
शून्य-लंबाई वाले चर के दो उदाहरण संख्यात्मक() या कैरेक्टर(0) हैं।
निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस त्रुटि को कैसे हल किया जाए।
त्रुटि को पुन: उत्पन्न कैसे करें
मान लीजिए कि हम R में शून्य लंबाई के साथ निम्नलिखित संख्यात्मक चर बनाते हैं:
#create numeric variable with length of zero
x <- numeric()
अब मान लीजिए कि हम इस वेरिएबल को if स्टेटमेंट में उपयोग करने का प्रयास करते हैं:
#if x is less than 10, print x to console
if(x < 10 ) {
x
}
Error in if (x < 10) {: argument is of length zero
हमें एक त्रुटि प्राप्त होती है क्योंकि जिस चर को हम परिभाषित करते हैं उसकी लंबाई शून्य है।
यदि हमने वास्तविक मान के साथ एक संख्यात्मक चर बनाया है, तो if कथन का उपयोग करते समय हमें यह त्रुटि कभी प्राप्त नहीं होगी:
#create numeric variable
y <- 5
#if y is less than 10, print y to console
if(y < 10 ) {
y
}
[1] 5
त्रुटि से कैसे बचें
शून्य तर्क लंबाई त्रुटि से बचने के लिए, हमें एक isTRUE फ़ंक्शन शामिल करना होगा, जो निम्नलिखित तर्क का उपयोग करता है:
is. logical (x) && length(x) == 1 && !is. na (x) && x
यदि हम इस फ़ंक्शन का उपयोग if स्टेटमेंट में करते हैं, तो हमें अपने वेरिएबल की किसी मान से तुलना करते समय कोई त्रुटि प्राप्त नहीं होगी:
if(isTRUE(x) && x < 10 ) {
x
}
त्रुटि प्राप्त करने के बजाय, हमें कोई आउटपुट नहीं मिलता क्योंकि isTRUE(x) फ़ंक्शन FALSE का मूल्यांकन करता है, जिसका अर्थ है कि x का मान कभी मुद्रित नहीं होता है।
अतिरिक्त संसाधन
निम्नलिखित ट्यूटोरियल बताते हैं कि आर में अन्य सामान्य त्रुटियों को कैसे ठीक किया जाए:
आर में कैसे ठीक करें: तर्कों में अलग-अलग संख्या में लाइनें शामिल होती हैं
आर में कैसे ठीक करें: अप्रयुक्त तर्कों को चुनने में त्रुटि
आर में मरम्मत कैसे करें: प्रतिस्थापन की लंबाई शून्य है