Still trying to enter R logic ... the "best" to open the results (on LHS) What is the way to return a number of values from the function?
I can not do this apparently:
R> FunctionReturningTwoValues & lt; - Function () {Return (C (1, 2))} R & gt; Returning function value two () [1] 1 2R & gt; A, B & L; - Returning function two values () error: unexpected ',' in 'A,' R & gt; C (a, b) & lt; - functionReturningTwoValues () c (a, b) & lt; Error in functionReturningTwoValues (): Object 'a' not found
Should I really do the following thing?
R & gt; R & lt; - Returning function two values () R & gt; A & lt; - r [1]; B & L; - r [2]
Or will the R programmer write something else:
R> FunctionReturningTwoValues & lt; - Function () {Return (List (first = 1, seconds = 2))} R & gt; R & lt; - Returning function two values () R & gt; R $ first [1] 1 r & gt; R $ second [1] 2
--- Edit to answer Shen's questions ---
Let me actually name the parts with the result value Do not need to. I am implementing a composite function for the first component and one second component ( min
and max
), if it was the same task for both components, Will not need them).
(1) list [...] & lt; - I had a decade ago posted on it. It does not require a special operator but it is necessary that the list should be written on the left hand side like [...]
# first run source command Displayed below or installed other and load gsubfn dev pkg (see note) list [a, b]
Note: Recently
list
has been added to its development version and it can be obtained through the following:source ("https: // Raw.githubusercontent.com/ggrothendieck/gsubfn/ Master/R / list.R ")
or install and load the gsubfn github development package (using devtools package):
devtools :: install_github ("Ggrôndndieck / gsubfn") library (GSUBFN)
If you only need first or second component Also do all the work:
list [A] & lt; - functionReturningTwoValues () list [A,] & lt; - Function Returning Value () List [, B] & lt; - Return function two values ()
<(> if you only need one value then functionReturningTwoValues () [[1]]
or functionReturningTwoValues () [[2]]
will suffice.) See the quoted R-help thread for more examples.
(2) with If the intention is to add multiple values later and return value is named, then with a simple option with
:
myfun & lt; - List of functions (a = 1, b = 2) [a, b]] and / P> attached (myfun ()) a + b
Added: with
and attached
No comments:
Post a Comment