2015-01-11 5 views
20

मैं त्रुटि संदेश मिला:"त्रुटि: ऑब्जेक्ट" <myvariable> 'नहीं मिला "का क्या अर्थ है?

Error: object 'x' not found

या

Error in mean(x) : error in evaluating the argument 'x' in selecting a method for function 'mean': Error: object 'x' not found

की तरह एक अधिक जटिल संस्करण इस क्या मतलब है?

उत्तर

20

त्रुटि का अर्थ है कि आर त्रुटि संदेश में वर्णित चर नहीं मिल सका।

त्रुटि को पुन: उत्पन्न करने का सबसे आसान तरीका एक चर के नाम को टाइप करना है जो अस्तित्व में नहीं है। (आप पहले से ही x परिभाषित किया है, तो एक अलग चर नाम का उपयोग करें।)

x 
## Error: object 'x' not found 

त्रुटि के और अधिक जटिल संस्करण एक ही कारण है: एक समारोह जब x मौजूद नहीं है बुला।

mean(x) 
## Error in mean(x) : 
## error in evaluating the argument 'x' in selecting a method for function 'mean': Error: object 'x' not found 

एक बार चर परिभाषित किया गया है, तो त्रुटि नहीं होगी।

x <- 1:5 
x 
## [1] 1 2 3 4 5  
mean(x) 
## [1] 3 

आप यदि किसी वैरिएबल ls या exists का उपयोग कर मौजूद है देखने के लिए जाँच कर सकते हैं।

ls()  # lists all the variables that have been defined 
exists("x") # returns TRUE or FALSE, depending upon whether x has been defined. 

त्रुटियाँ इस तरह हो सकता है जब आप अमानक मूल्यांकन का उपयोग कर रहे हैं। उदाहरण के लिए, subset का उपयोग करते समय, त्रुटि तब होगी जब डेटा फ्रेम में एक स्तंभ नाम मौजूद नहीं है। यदि आप कस्टम के मूल्यांकन का उपयोग

d <- data.frame(a = rnorm(5)) 
subset(d, b > 0) 
## Error in eval(expr, envir, enclos) : object 'b' not found 

त्रुटि भी हो सकता है।

get("var", "package:stats") #returns the var function 
get("var", "package:utils") 
## Error in get("var", "package:utils") : object 'var' not found 

दूसरे मामले में, var समारोह नहीं पाया जा सकता है जब आर utils पैकेज के परिवेश में लग रहा है क्योंकि utilsstats से search सूची में नीचे स्थान है।


अधिक उन्नत उपयोग मामलों में, आप को पढ़ने के लिए चाहते हो सकता है:

+0

मैं उपयोग करने के लिए मौजूद है की कोशिश की ("x") का एक बहुत ही लंबा सूची के साथ एक वातावरण में एक विशिष्ट मूल्य का परीक्षण, लेकिन यदि एक्स नल है तो यह एक त्रुटि फेंकता है: 'अस्तित्व में त्रुटि (x): अवैध पहले तर्क'। is.null (x) उस के लिए परीक्षण कर सकता है, लेकिन एक्स परीक्षण नहीं होने पर यह परीक्षण त्रुटि उत्पन्न करता है: 'त्रुटि: ऑब्जेक्ट' x 'नहीं मिला'। 22 कैच? –

+0

@ आर। एसचर्स 'एक्स <- न्यूल; मौजूद है ("x") '' TRUE 'लौटाता है। मुझे लगता है कि आपके पास एक अलग समस्या है। –

+0

आप सही हैं। अब मुझे लगता है कि मैंने अपने कॉल में 'x' उद्धृत नहीं किया है:' मौजूद है (x) 'मौजूद होना चाहिए (" x ")'। –

3

क्यों एक "वस्तु नहीं मिला" त्रुटि हो सकता है की चर्चा करते हैं इसका अर्थ समझाने के अलावा आर में फेंक दिया गया है। इसका अर्थ क्या है (कई लोगों के लिए) स्पष्ट है: प्रश्न में चर, कम से कम आर दुभाषिया के अनुसार, अभी तक परिभाषित नहीं किया गया है, लेकिन यदि आप अपने कोड में अपनी वस्तु देखते हैं तो यह क्यों हो रहा है इसके कई कारण हो सकते हैं:

  1. अपनी घोषणाओं का सिंटैक्स जांचें।यदि आपने बाद में कॉलिंग कथन में निचले मामले की बजाय एक अक्षर या ऊपरी केस का गलत टाइप किया है, तो यह आपकी मूल घोषणा से मेल नहीं खाएगा और यह त्रुटि होगी।

  2. क्या आपको यह त्रुटि नोटबुक या मार्कडाउन दस्तावेज़ में मिल रही है? आपको केवल उस सेल को फिर से चलाने की आवश्यकता हो सकती है जिसमें वर्तमान सेल चलाने से पहले आपकी घोषणाएं हो सकती हैं जहां आप चर को कॉल कर रहे हैं।

  3. क्या आप अपने आर दस्तावेज़ को बुनाई करने की कोशिश कर रहे हैं और जब आप कक्ष चलाते हैं तो वेरिएबल काम ढूंढते हैं लेकिन जब आप कोशिकाओं को बुनाते हैं?

    {r sourceDataProb1, echo=F, eval=F} # some code here

ऊपर टुकड़ा एक अनुसंधान markdown सेल की शुरुआत से है: - तो तो आप टुकड़ा मैं एक संभव दुष्प्रभाव यह है कि इस त्रुटि से चलाता है के लिए नीचे उपलब्ध कराने रहा जांच करना चाहते हैं। यदि eval और echo दोनों को गलत पर सेट किया गया है, तो जब आप दस्तावेज़ को बुनाई करने का प्रयास करते हैं तो यह एक त्रुटि उत्पन्न कर सकता है। स्पष्ट करना। मेरे पास एक उपयोग का मामला था जहां मैंने इन झंडे को झूठी के रूप में छोड़ा था क्योंकि मैंने सोचा था कि मैं नहीं चाहता था कि मेरा कोड प्रतिबिंबित हो या उसके परिणाम मार्कडाउन एचटीएमएल में दिखाए जा सकें। लेकिन चूंकि चर को बाद में कोशिकाओं में उपयोग किया गया था, इसलिए बुनाई के दौरान यह एक त्रुटि हुई। टी/एफ TRUE/FALSE झंडे के साथ सरल परीक्षण और त्रुटि यह निर्धारित कर सकती है कि यह आपकी त्रुटि का स्रोत है जब यह RStudio से R Markdown दस्तावेज़ बुनाई में होता है।

आखिरकार: क्या आपने इसे घोषित करने के बाद वैरिएबल को हटा दिया या स्मृति से साफ़ किया?

  • आर एम() अलग-अलग
  • RStudio की evironment विंडो में झाड़ू आइकन मार को हटा वर्तमान काम के माहौल में सब कुछ clearls
  • ls() मदद कर सकते हैं देखते हैं कि क्या अभी सक्रिय देखने के लिए है एक लापता घोषणा।
  • मौजूद है ("x") - के रूप में एक और पोस्टर से उल्लेख किया है, मदद कर सकते हैं सक्रिय चर
संबंधित मुद्दे