2017-06-13 7 views
0

新しく作成されたリアクティブ(ユーザー入力に基づいてデータフレームをサブセット化することによって作成)の列の内容をループし、関数で使用する必要があります。例えばR Shiny Looping Over A反応

target <- reactive({df$targetid[active$region == input$region]}) 

for (i in 1:length(target())){ 



target_info[[i]] <<- reactive({output <- someAPIcallingFunction(target=target(), 
                ma=7, 
                score_restrict = TRUE, 
                metric_restrict = "metric1")}) 
} 

私は角括弧が正しい場所にあることを確認しないんだけど、反応性の出力をループの概念上の任意のヘルプは本当にいただければ幸いです!実施例については、の編集番号を参照してください。

subset1<- reactive({ 
    BI_[input$brand == df$brand] 
    }) 



    hello<- reactive({ 
    for (i in 1:nrow(subset1())) 
     { 
     print(subset1()[i,1]) } 

AB

+0

あなたは、local' '使用する必要があります。https://stackoverflow.com/a/44506201/1100107は –

+0

ああ待って、あなたが使用していない' i' *内側* 'reactive'なので、' local'が必要なのか分かりません。完全な(ただし最小限の)作業例を手助けする方が簡単です。 –

+0

うわー、あなたのループが反応する長さを持っていることに気づきました...私は質問の2/3を逃しました。非常に興味深いケース。例を挙げてください:) –

答えて

0

見つかり問題の解決策(回避策も):

は、私がデータソースなどの反応性の内容でlapply使用されるが、への反応変換をオンにする必要がありました最初にリスト。

variableA<- reactive({as.list(areactive())}) 


    testing<- reactive({lapply(variableA(), 
       function(k) somefunction{parameter1=input1,parameter2=k}}) 

希望により、時間を節約できます。私はここで行うよう

AB