r - How can I call a function with some parameters specified in parent environment? -
वैश्विक वातावरण में परिभाषित निम्नलिखित फ़ंक्शन पर विचार करें:
परीक्षण & lt; - फ़ंक्शन (x
eval (उद्धरण (परीक्षण (1)) का उपयोग करना, सूची (y = 2))
काम नहीं करता है।
& gt; परीक्षा (1) में त्रुटि: (वस्तु) 'y' नहीं मिला
ऐसा इसलिए है क्योंकि फ़ंक्शन नहीं मिलेगा < कोड> वाई में सूची (y = 2)
। क्या कोई ऐसा सरल तरीका है कि मैं जिस तरह से उसका मूल्यांकन कर सकता हूं उसे संशोधित कर सकता है ताकि परीक्षण (1)
एक वातावरण में काम करता हो जहां y
परिभाषित किया जाता है?
मुझे लगता है कि पुराना फ्रेम से y
के डिफ़ॉल्ट मान को परिभाषित करने का सबसे सुरक्षित तरीका होगा यदि नहीं ।
परीक्षण & lt; -function (x, y = मिल ("y", envir = parent.frame (1))) {x + y} y & lt; -3 परीक्षा (1) # [1] 4 टेस्ट (1, 10) # [1] 11
लेकिन वास्तव में यह एक भयानक विचार की तरह लगता है।
Comments
Post a Comment