Ошибка (NULL) левой стороны присваивания при подстановке реактивной матрицы - PullRequest
0 голосов
/ 31 марта 2019

Я боролся с проблемой при разработке моего первого Shiny App.У меня есть приложение с 2 ползунками.Из одного из них, называемого 'threshold_threshold', пользователь может выбрать значение, которое я хочу использовать позже для подмножества фрейма данных.Затем я создаю матрицу, имеющую то же число строк, что и это подмножество, и я хотел бы заполнить первый столбец этой матрицы столбцом «счет» подмножества.Затем я зациклюсь на столбцах матрицы, чтобы полностью заполнить матрицу.Однако, когда я пытаюсь присвоить столбец «оценка» первому столбцу матрицы, я получаю следующее сообщение об ошибке:

Error in individual_ltv_pa()[, 1] <- reactive({ : 
  invalid (NULL) left side of assignment

И вот мой код:

first_pct <- read.csv('first_pct.csv')
results <- read.csv('results.csv')
num_period <- length(first_pct)

library(shiny)
library(dplyr)

# Define UI for application 
ui <- fluidPage(

   # Application title
   titlePanel("Switching to PA campaign results"),

   # Sidebar with a slider input for number of bins 
   sidebarLayout(
      sidebarPanel(
         sliderInput("probability_threshold",
                     "Sensitivity",
                     min = 0,
                     max = 1,
                     value = 0.7),
         sliderInput("discount_rate",
                     label = 'Discount rate',
                     min = 0,
                     max = 1,
                     value = 0.1)
      ),

      # Show a plot of the generated distribution
      mainPanel(
         tabsetPanel(
           tabPanel('Discounted Cumulated Revenues'),
           tabPanel('Discounted Yearly Revenues'),
           tabPanel('Data')
         )
      )
   )
)

# Define server 
server <- function(input, output) {
    gonna_switch <- reactive({
      results[results$prob >= input$probability_threshold, c('contact_id', 'score')]
    })

    individual_ltv_pa <- reactive({
      matrix(nrow = nrow(gonna_switch()), ncol = 13)
    })

    individual_ltv_pa()[, 1] <- reactive({ gonna_switch()$score })




}

# Run the application 
shinyApp(ui = ui, server = server)

Я отчасти рад своему анализу, и это приложение было бы идеальным, чтобы представить его другим, поэтому я действительно хочу это исправить.

Большое спасибо за вашу помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...