0

KPI の列の値を取得し、これらの値を新しいデータ テーブルのヘッダーに設定したいと考えています。このアプリでは、管理者が KPI を作成し、ユーザーが 2 番目のデータ テーブルに値を入力できるようにします。

最初のテーブル

したがって、次のようなテーブルが必要です。

新しいデータ テーブル

server.r

GetTableMetadata <- function() {
   fields <- c(id = "Id", 
               name = "Name", 
               used_shiny = "Used Shiny", 
               r_num_years = "R Years")

   result <- list(fields = fields)
   return (result)
 }
    #display table in wide format
     output$viewresponses<-DT::renderDataTable({

      viewDF<-(as.data.frame(responses))
      viewDF %>% spread(GetTableMetadata()$fields$name,GetTableMetadata()$fields$used_shiny)[-1]
      })

私が得たエラーは次のとおりです。

Error : Invalid column specification
4

1 に答える 1

0

ライブラリ(tidyr)パッケージを使用して、ロングフォーマットをワイドフォーマットに変換しました

KPI <- c('cost','time','quality','time','time')
 measurements <- c(1, 2, 3,2,1)
kpi.data <- data.frame(KPI, measurements)

kpi.data は次のとおりです (長い形式)。

  KPI measurements
1    cost            1
2    time            2
3 quality            3
4    time            2
5    time            1

tidyr のスプレッド関数を使用すると、ロング フォーマットがワイド フォーマットに変換されます。

kpi.data %>% spread(KPI,measurements)
于 2015-11-26T03:34:35.240 に答える