R/opspec.R
blocks_to_rowrecs_spec.Rd
Create a block records to row records transform specification object that holds the pivot control table, specification of extra row keys, and control table keys.
blocks_to_rowrecs_spec( controlTable, ..., recordKeys = character(0), controlTableKeys = colnames(controlTable)[[1]], checkNames = TRUE, checkKeys = TRUE, strict = FALSE, allow_rqdatatable = FALSE )
controlTable | an all character data frame or cdata pivot control. |
---|---|
... | not used, force later arguments to bind by name. |
recordKeys | vector of columns identifying records. |
controlTableKeys | vector of keying columns of the controlTable. |
checkNames | passed to blocks_to_rowrecs. |
checkKeys | passed to blocks_to_rowrecs. |
strict | passed to blocks_to_rowrecs. |
allow_rqdatatable | logical, if TRUE allow rqdatatable shortcutting on simple conversions. |
a record specification object
d <- wrapr::build_frame( "id", "measure", "value" | 1 , "AUC" , 0.7 | 1 , "R2" , 0.4 | 2 , "AUC" , 0.8 | 2 , "R2" , 0.5 ) transform <- blocks_to_rowrecs_spec( wrapr::qchar_frame( "measure", "value" | "AUC" , AUC | "R2" , R2 ), recordKeys = "id") print(transform)#> { #> block_record <- wrapr::qchar_frame( #> "id" , "measure", "value" | #> . , "AUC" , AUC | #> . , "R2" , R2 ) #> block_keys <- c('id', 'measure') #> #> # becomes #> #> row_record <- wrapr::qchar_frame( #> "id" , "AUC", "R2" | #> . , AUC , R2 ) #> row_keys <- c('id') #> #> # args: c(checkNames = TRUE, checkKeys = TRUE, strict = FALSE, allow_rqdatatable = FALSE) #> } #>d %.>% transform#> id AUC R2 #> 1 1 0.7 0.4 #> 2 2 0.8 0.5#> { #> row_record <- wrapr::qchar_frame( #> "id" , "AUC", "R2" | #> . , AUC , R2 ) #> row_keys <- c('id') #> #> # becomes #> #> block_record <- wrapr::qchar_frame( #> "id" , "measure", "value" | #> . , "AUC" , AUC | #> . , "R2" , R2 ) #> block_keys <- c('id', 'measure') #> #> # args: c(checkNames = TRUE, checkKeys = TRUE, strict = FALSE, allow_rqdatatable = FALSE) #> } #># identity (in structure) d %.>% transform %.>% inv_transform#> id measure value #> 1 1 AUC 0.7 #> 2 1 R2 0.4 #> 3 2 AUC 0.8 #> 4 2 R2 0.5#> id measure value #> 1 1 AUC 0.7 #> 2 1 R2 0.4 #> 3 2 AUC 0.8 #> 4 2 R2 0.5