2
我想在另一個變量有條件計算的Shiny中的數據框中計算新變量。有條件的子集和計算在閃亮的數據幀中的新變量
這裏是我想要做的一個小例子:
mydata <- data.frame(cbind(x = 1, y = 1:10))
value <- 10 #from user input
mydata$z[mydata$y >= 5] <- mydata$y[mydata$y >= 5] + value
mydata$z[mydata$y < 5] <- mydata$y[mydata$y < 5] - value
這是我的ui.R文件:
#Library
library("shiny")
# Define UI for miles per gallon application
shinyUI(pageWithSidebar(
# Application title
headerPanel("Test"),
sidebarPanel(
numericInput("value", "Enter Value:", 10)
),
mainPanel(
tableOutput("table")
)
)
)
這是我的server.R文件:
#Libraries
library(shiny)
#Load Data
mydata <- data.frame(cbind(x = 1, y = 1:10))
# Define server logic
shinyServer(function(input, output) {
mydata$z[mydata$y >= 5] <- reactive({
mydata$y + input$value
})
mydata$z[mydata$y < 5] <- reactive({
mydata$y - input$value
})
output$table <- renderTable({
mydata
})
})
使用此閃亮代碼,我收到以下錯誤:
Error in mydata$z[mydata$y >= 5] <- reactive({ : invalid type/length (closure/0) in vector allocation
我已經嘗試了子集和分配的不同方式,但我被卡住了。非常感謝您的幫助!
正是我在找的東西。非常有幫助,謝謝! – dadrivr