Description
The Unpivot (td_unpivot_mle
) function pivots data that is stored
in columns into rows, which is the reverse of the function Pivot (td_pivot_mle
).
Usage
td_unpivot_mle ( data = NULL, unpivot = NULL, input.types = FALSE, attribute.column = "attribute", value.column = "value_col", accumulate = NULL, data.sequence.column = NULL )
Arguments
data |
Required Argument. |
unpivot |
Required Argument. |
input.types |
Optional Argument.
Default Value: FALSE |
attribute.column |
Optional Argument. |
value.column |
Optional Argument. |
accumulate |
Required Argument. |
data.sequence.column |
Optional Argument. |
Value
Function returns an object of class "td_unpivot_mle" which is a named
list containing Teradata tbl object.
Named list member can be referenced directly with the "$" operator
using name: result.
Examples
# Get the current context/connection con <- td_get_context()$connection # Load example data. loadExampleData("unpivot_example", "unpivot_input") # Create remote tibble objects. unpivot_input <- tbl(con, "unpivot_input") # Example 1 : With input.types = FALSE there is only one value column and it has the # data type VARCHAR and using default value for the arguments attribute.column and value.column. td_unpivot_out1 <- td_unpivot_mle(data = unpivot_input, unpivot = c("temp","pressure","dewpoint"), input.types = FALSE, accumulate = c("sn","city","week") ) # Example 2 : With input.types = TRUE, the output tbl_teradata has a separate column prefixed by # value.column for each value in the unpivot argument (target column). # The value colunms are suffixed by the datatype. # Custom names are provided for attribute.column and value.column arguments. td_unpivot_out2 <- td_unpivot_mle(data = unpivot_input, unpivot = c("temp","pressure","dewpoint"), input.types = TRUE, attribute.column = "climate_attributes", value.column = "attributevalue", accumulate = c("sn","city","week") ) # Example 3 : Use the output of the td_pivot_mle function as an input to the # td_unpivot_mle function. loadExampleData("pivot_example", "pivot_input") pivot_input <- tbl(con, "pivot_input") # create a td_pivot_out object for all three keys in the pivot column. td_pivot_out <- td_pivot_mle(data = pivot_input, data.partition.column = c("sn","city","week"), data.order.column = c("week","attribute"), partition.columns = c("sn","city", "week"), target.columns = c("value1"), pivot.column = "attribute", pivot.keys = c("temp","pressure","dewpoint") ) # Use the tbl_teradata object td_pivot_out as input to the td_unpivot_mle function. td_unpivot_out3 <- td_unpivot_mle(data = td_pivot_out$result, unpivot = c("value1_temp", "value1_pressure value1_dewpoint"), accumulate = c("sn","city","week"), input.types = FALSE )