मैं एक समारोह लिखने की कोशिश कर रहा हूं, जो आर चर के दायरे को सीमित करता है। उदाहरण के लिए,सीमित चरम सीमा
source("LimitScope.R")
y = 0
f = function(){
#Raises an error as y is a global variable
x = y
}
मैं चर पर्यावरण परीक्षण के बारे में सोचा, लेकिन वास्तव में ऐसा करने के तरीके के बारे में सुनिश्चित नहीं था।
क्यों
मैं undergrads के लिए आर सिखाना। अपने पहले कुछ व्यावहारिक में उनमें से कुछ हमेशा परिवर्तनीय दायरे के बारे में भूल जाते हैं, इसलिए उनके सबमिट किए गए कार्य काम नहीं करते हैं।
n = 10
f = function(x){
#Raises an error
#as I just source f and test it for a few test cases.
return(x*n)
}
मैं एक त्वरित समारोह है कि 'बंद कर देते हैं' होगा गुंजाइश के बाद किया गया था: उदाहरण के लिए, मैं हमेशा की तरह कुछ मिलता है। जैसा कि आप कल्पना कर सकते हैं कि इसे विशेष रूप से मजबूत नहीं होना चाहिए, क्योंकि यह केवल कुछ व्यावहारिकताओं के लिए पेश किया जाएगा।
ब्याज से, आप ऐसा क्यों करना चाहते हैं? –
मैंने जवाब में एक अनुभाग जोड़ा है कि मैं ऐसा क्यों करना चाहता हूं। – csgillespie
यह भी देखें http://stackoverflow.com/questions/6216968/r-force-local-स्कोप –