因爲列1和列2有不同行號,所以我用列表來存儲結果。
data <- data.frame(
Variable = c("A D", "A D", "B D", "B E", "C E", "C E"),
Value = rep(5, 6)
)
split_var <- function(variable){
return(strsplit(variable, " ")[[1]])
}
variable_mat <- t(apply(matrix(data[,1], ncol=1), 1, split_var))
Column1_table <- table(variable_mat[,1])
Column1 <- paste(names(Column1_table), Column1_table, sep = ":")
Column2_table <- table(variable_mat[,2])
Column2 <- paste(names(Column2_table), Column2_table, sep = ":")
result_list <- list(Column1 = Column1, Column2 = Column2)
而結果:
> result_list
$Column1
[1] "A:2" "B:2" "C:2"
$Column2
[1] "D:3" "E:3"
你必須每列行相同。第三行應該在第二行上? NA?你是否開始只有一列並列值? –
我不明白。我有我的項目與他們相關的價值。我想通過分離變量列來區分這些項目。 –