R DTedit和SHINK:如何基于另一个表的选定行显示表上的特定数据?

R DTedit和SHINK:如何基于另一个表的选定行显示表上的特定数据?,r,datatable,shiny,rendering,dt,R,Datatable,Shiny,Rendering,Dt,这是我的第一个问题,也是第一次在这里,希望问题的结构是正确的。 我是shiny的入门级用户,正在使用DTedit包为我的应用程序创建数据表。 我必须创建两个数据表。在第一个表中,只显示一些数据(这样做没有问题),而在第二个表中,根据第一个表中选择的行显示附加列的值。简而言之,第二个表用于提供第一个表中所选行的更多信息 这里有使用DT包执行此操作的代码 Project Counts Inventory A

这是我的第一个问题,也是第一次在这里,希望问题的结构是正确的。 我是shiny的入门级用户,正在使用DTedit包为我的应用程序创建数据表。 我必须创建两个数据表。在第一个表中,只显示一些数据(这样做没有问题),而在第二个表中,根据第一个表中选择的行显示附加列的值。简而言之,第二个表用于提供第一个表中所选行的更多信息

这里有使用DT包执行此操作的代码

                  Project     Counts     Inventory
                  A          25         100
                  B          20         120
                  C          10          50
                  ",header=TRUE,stringsAsFactors = FALSE)


df2 <- read.table(text="
                  ProjectID     Sub_Project     Counts       Date
                  A            1              5      2017-05-01
                  A            2             10      2017-05-01
                  A            2             10      2017-06-01
                  B            1             40      2017-05-01
                  B            1             20      2017-06-01
                  B            1             20      2017-07-01
                  B            2             40      2017-05-01
                  C            1             15      2017-05-01
                  C            1             35      2017-06-01
                  ",header=TRUE,stringsAsFactors = FALSE)



ui <- dashboardPage(
  dashboardHeader(title = 'Dashboard'),
  dashboardSidebar(),

  dashboardBody(

    tabsetPanel(
      tabPanel('Sequencing', 
               fluidRow(
                 column(12, 
                        dataTableOutput('project_table'), 
                        dataTableOutput('subproject_table'))
               )
      )
    )
  )
)



server <- function(input, output) { 

  output$project_table <- renderDataTable(df1, options = list(pageLength = 10))


  output$subproject_table <- renderDataTable({
    s = input$project_table_rows_selected
    project <- unique(df1[s,c("Project")])
    df2[df2$ProjectID %in% project, ]})
}

shinyApp(ui, server)
项目盘点库存
A 25 100
B 20 120
C1050
,header=TRUE,stringsAsFactors=FALSE)
df2