2017-09-07 1 views
1

Ich versuche, reaktive Werte in Schleifen zu erstellen Ich möchte grundsätzlich 10 CSV-Dateien für verschiedene Länder (daher die Eingabe [[Paste0 ('Land', i)]])) wie kann ich schaffe reaktive Werte cars_i bis cars_10 Und wenn ich eine reaktive Werte hätte, würde ich die Listen in ihnen Zugriff durch Autos() aufrufen $ getcolsErstellen von Blindwerten in Schleifen Shiny R

Aber wenn ich 10 haben, wie kann ich sie nennen. Wäre es Autos [i] $ getcols?

lapply(1:10, function(i) { 

paste0('cars', i)<- reactive({  
cars<-fread(paste(input[[paste0('country', i)]],"cars.csv",sep = "")) 
list(Name=cars$Name,Category=cars$Category,getcols=names(cars)) 
}) 
}) 
+0

ein [reproduzierbaren Beispiel] Bitte geben (https: //cran.r-project. org/web/packages/rexx/README.html # what-is-a-represx), wie vom R-Tag verlangt (den Mauszeiger darüber bewegen) und formatieren Sie Ihren Code + Beschreibung. – lukeA

Antwort

2

können Sie versuchen, so etwas wie

data <- reactive({ lapply(1:10, function(i) read.csv(paste0("country_", i, ".csv"))) }) 

können Sie die Daten wie dieser Zugriff

data()[[1]] # country_1 
data()[[2]] # country_2 
+0

Danke !! das hat funktioniert. Ich verwirrte mich, indem ich reactive in lapply – shamary

+0

glücklich zu helfen. Hoffentlich hilft es auch bei Ihren nächsten reaktiven Ausdrücken – CPak