Sous-ensemble d'un bloc de données basé sur de l'entrée utilisateur, Brillant

Je suis en train de construire une Brillante application qui sous-ensembles d'un bloc de données (pour inclure uniquement les lignes où une variable catégorique correspond à l'utilisateur de sélectionner l'entrée à partir de l'INTERFACE utilisateur) avant le traitement des données dans le Serveur et ensuite visualisées dans l'INTERFACE utilisateur. J'ai essayé plusieurs méthodes mais je continue à recevoir des erreurs, par exemple, "l'objet de type "fermeture" n'est pas subsettable"

Puis quand j'essaie de lancer le réactif de la saisie de l'utilisateur avec

target <- toString(reactive({input$value}))

J'obtiens l'erreur suivante:

"Erreur dans comme.vecteur(x, "caractère") : ne peut pas contraindre type "fermeture" à vecteur de type "caractère""

Des idées? Je pense qu'il y a quelque chose de conceptuel que je suis absent. Voici mon code:

#Server
shinyUI(pageWithSidebar(

headerPanel("Pricing Analysis Tool"),

sidebarPanel(
selectInput("fruit", "Select fruit:", 
            choices = c(inventory), selected = "banana", multiple = FALSE),
numericInput("delta", "Price Change (%):", 10),
submitButton("Run Simulation")),

mainPanel(
plotOutput("PricePlot")
)))


#server
shinyServer(function(input, output, session) {

target_inventory <- reactive({inventory$product == input$fruit})
...

})

Une fois mon stock est sous-ensemble de données pour inclure uniquement les produits dont je suis l'évaluation, alors je vais utiliser renderPlot pour générer des graphiques. Je suis accroché sur. fondé sur une entrée de l'utilisateur. Est-il une autre méthode que je devrais utiliser dynamiquement sous-ensemble le plus vaste ensemble de données basé sur une entrée de l'utilisateur?

Merci beaucoup pour votre aide,
Noé

Mise à jour: j'ai été en mesure de réussir sous-ensemble de mes données basé sur la variable entrées de l'utilisateur et de manipuler le sous-ensemble et de les visualiser à l'aide de ce code dans mon fichier de serveur (merci, nivangio, pour l'affichage de votre code que j'ai utilisé comme modèle de R-blogueur: http://www.r-bloggers.com/dashboards-in-r-with-shiny-and-googlevis/)

target_inventory <- reactive({
    a <- subset(inventory, inventory$product %in% input$fruit)
    a <- droplevels(a)
return(a)
})

Une fois le sous-ensemble a été créé, j'ai été capable de l'utiliser dans la dynamique des graphiques en référencement comme target_inventory()

Juste inverser l'ordre et ne target <- reactive({toString(input$value)})
Merci pour la réponse rapide, @Ramnath! En supposant que l'entrée sélectionnée dans l'INTERFACE utilisateur ont été "banane", vous attendez-vous à imprimer(cible) pour revenir "à la banane"? Je ne suis pas encore avoir de la chance...
Vous devrez poster un peu de code pour nous de comprendre le contexte de mieux. Sinon, vous verrez beaucoup de réponses basées sur des spéculations de vos besoins.
Merci @Ramnath, je suis nouveau sur Stackoverflow, l'apprentissage de l'étiquette 🙂 juste ajouté mon code pour le poste.
Lorsque vous utilisez target_inventory de sous-ensemble de vos données, car il est un réactif de l'objet, et donc à une fermeture, vous devez inclure les parenthèses: inventory[target_inventory(), ]. Cependant, sans un exemple reproductible, c'est juste une supposition.

OriginalL'auteur noah_r_user | 2014-02-02