2016-11-15 21 views
2

開門見山... IM與R非常新,我只是寫我的第一個「便宜」 :)功能是:我如何命名輸出/函數變爲R

Holzrezeptur <- function(Spana, u, LG, FGL, HG, FGH) { 
    if (u > 10) { 
    warning("Ausgleichsfeuchtigkeit liegt über 10%") 
    } 
    Spanlut <- Spana*(1 + u/100) 
    Leimfl <- (Spana*(LG/100))*(100/FGL) 
    Haerterfl <- (Leimfl*(FGL/100)*HG/100)*(1000/FGH) 
    out <- c(Spanlut, Leimfl, Haerterfl) 
    return(out) 
} 

Holzrezeptur(1800, 4, 8, 60, 3, 30) 

##[1] 1872 240 144 

..原諒我,這是分別用德語寫的我的英語:)。它是關於如何獲得混合物以製造特定木材溼度的特定刨花板的簡化方法。

我的問題: 我的三個輸出是「Spanlut」,「Leimfl」和「Haerterfl」,對於那些我想命名輸出/結果的人來說。

所以結果不應該是:

##[1] 1872 240 144 

而更像是:

## Spanlutro Leimfluessig Haerterfluessig 
##  1872   240    144 

簡單的最好的! :)

如果我有一個方法我會張貼它,但我不知道如何開始。 (我可以直接將它寫入綁定!?) 即時對於你的大部分相當肯定,這只是一個fingerexercise,所以我希望得到迴應我的小問題。 我真希望我不會生你:) 非常感謝你的幫助。

與問候 -db-

回答

0

您需要提供姓名,同時結合輸出。一種方法是創建一個數據框。

你可以試試:

Holzrezeptur <- function(Spana, u, LG, FGL, HG, FGH) { 
    if (u > 10) { 
    warning("Ausgleichsfeuchtigkeit liegt über 10%") 
    } 
Spanlut <- Spana*(1 + u/100) 
Leimfl <- (Spana*(LG/100))*(100/FGL) 
Haerterfl <- (Leimfl*(FGL/100)*HG/100)*(1000/FGH) 
out <- data.frame(Spanlutro =Spanlut 
        , Leimfluessig = Leimfl 
        , Haerterfluessig = Haerterfl) 
return(out) 
} 
+0

親愛Aramis7d 平穩,工作時,我已經知道了,完美的解決方案RESP答案的命令。 非常感謝! – Bandit

+0

@Bandit很高興知道。如果它解決了您的查詢,請隨時看看這裏'http:// stackoverflow.com/help/ someone-answers' – Aramis7d

0

最簡單的辦法:out <- list(Spanlut=Spanlut, Leimfl=Leimfl, Haerterfl=Haerterfl)

+0

親愛的persimmon_jones naaaa太容易了! :)呵呵只是開玩笑吧;謝謝你,以及這個替代品! – Bandit