行名称未分配给矩阵对象

时间:2019-06-24 17:27:33

标签: r rowname

行名功能未为矩阵对象分配名称

我有一个由“ channel_from”,“ channel_to”和“ transition_probability”变量组成的列表。 channel_from和channel_to变量可以包含或不包含相同的通道。

数据集视图

enter image description here

下面的代码

trans_matrix_complete <- mod_attrib$transition_matrix


trans_matrix_complete <- rbind(trans_matrix_complete, df_dummy %>%
   select(channel_from, channel_to, transition_probability))

levels(trans_matrix_complete$channel_from)
levels(trans_matrix_complete$channel_to)

trans_matrix_complete$channel_to <- factor(trans_matrix_complete$channel_to,
                            levels = c(levels(trans_matrix_complete$channel_to)))

trans_matrix_complete <- dcast(trans_matrix_complete,
                               channel_from ~ channel_to,
                               value.var = 'transition_probability')
typeof(trans_matrix_complete)

trans_matrix_complete[is.na(trans_matrix_complete)] <- 0

row.names(trans_matrix_complete) <- trans_matrix_complete$channel_from
trans_matrix_complete <- as.matrix(trans_matrix_complete[, -1])

我希望派生矩阵对象将“ channel_from”显示为行标签,将列显示为“ channel_to”值。但是,似乎矩阵无法正确创建,因为我得到的是:

enter image description here

由于未在矩阵对象中分配行标签。关于代码的哪一部分正常工作的任何想法吗?我认为是通过将channel_from值分配为行值来使行名无法正常工作,但是我不确定错误背后的原因。

0 个答案:

没有答案