53038


Rの関数化についての質問です。

関数の中身のfor文だけ実行すると破壊的になりうまくいきますが、、関数として実行すると非破壊的になって更新されていないようです。  
グローバル変数が原因かと想像しているのですが、<<-を使ってもうまく行かず、という感じです。

[code]

    func <- function(x1,df){
      for(i in 1:nrow(df)){
        df[i,x1+1] <- min(df[i,1:x1]) 
         }
    }
    
[/code]

よろしくお願いいたします。


CC BY-SA 4.0
2019-02-25T14:18:41.050
53033
2019-02-26T00:21:18.887
2019-02-25T14:27:07.243
12457
12457
question
r
Rの関数化とfor文


関数の戻り値を指定してみてはどうでしょうか？

[code]

    func <- function(x1,df){
      for(i in 1:nrow(df)){
        df[i,x1+1] <- min(df[i,1:x1]) 
         }
        df #これを追加
    }
    
[/code]


CC BY-SA 4.0
2019-02-26T00:21:18.887
53038
2019-02-26T00:21:18.887
163
53033
answer