| pivot_to_matrix {proporz} | R Documentation |
Pivot long data.frame to wide matrix and vice versa
Description
Create a matrix in 'wide' format from a data.frame with 3 columns with
pivot_to_matrix or create a data.frame in long format from a matrix with
pivot_to_df.
Usage
pivot_to_matrix(df_long)
pivot_to_df(matrix_wide, value_colname = "values")
Arguments
df_long |
data.frame in long format with exactly 3 columns |
matrix_wide |
matrix in wide format |
value_colname |
name for the new value column in the resulting data.frame |
Details
These pivot functions are used to prepare data for biproporz() in
pukelsheim(). They are not supposed to cover general use cases or provide
customization. They mainly exist because reshape is hard to handle and the
package should have no dependencies.
Value
A data.frame with 3 columns or a matrix. Note that the results are sorted by the first and second column (data.frame) or row/column names (matrix).
Examples
# From data.frame to matrix
df = data.frame(party = c("A", "A", "A", "B", "B", "B"),
region = c("III", "II", "I", "I", "II", "III"),
seats = c(5L, 3L, 1L, 2L, 4L, 6L))
pivot_to_matrix(df)
# from matrix to data.frame
mtrx = matrix(1:6, nrow = 2)
pivot_to_df(mtrx)
# from matrix to data.frame using dimnames
dimnames(mtrx) <- list(party = c("A", "B"), region = c("I", "II", "III"))
pivot_to_df(mtrx, "seats")
# Note that pivot results are sorted
pivot_to_df(pivot_to_matrix(df)) == df[order(df[[1]], df[[2]]),]
[Package proporz version 1.5.0 Index]