2012-06-06 41 views
1

假設我有一個功能功能僅給出一個參數

測試< - 功能(S,T){
..
} 需要兩個參數。

我怎樣才能讓這個它也需要一個單獨的參數,即test(t)將返回test(t,t)?提前致謝。

回答

2

因爲R使用懶評價,您可以設置第二個參數等於第一個參數的默認值...

foo <- function(s,t=s) { 
    s+t 
} 
> foo(4) 
[1] 8 
> foo(4,5) 
[1] 9 
+0

正是我在找什麼,謝謝! –

0

的參數設置的默認值是最簡單的,但你也可以使用函數內部的missing函數(在if語句中)來檢查函數是否提供了參數,並根據該函數做了不同的處理。