Dcast() 奇怪的输出
Dcast() weird output
我有两个数据框。对两者应用相同的 dcast() 函数会得到不同的输出结果。两个数据集具有相同的结构但大小不同。第一个超过950行:
我申请的代码是:
trans_matrix_complete <- mod_attrib$transition_matrix
trans_matrix_complete[which(trans_matrix_complete$channel_from=="_3RDLIVE"),]
trans_matrix_complete <- rbind(trans_matrix_complete, df_dummy)
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')
我得到的 trans_matrix_complete 输出如下:
有些东西没有正常工作,因为只有几行的较小数据框我得到以下结果:
哪里
a) 行号不同。我不确定为什么在第一个案例中列出了两个点
b) 同样,尝试通过
将行名分配给数据框
row.names(trans_matrix_complete) <- trans_matrix_complete$channel_from
不适用于大型数据框,因为尽管 row.names 联系人数据框显示与第一张图片完全一样,没有为行分配名称。
知道这种奇怪的行为吗?
我决定使用以下函数从 tidyverse 包的 dcast() 转移到 spread():
trans_matrix_complete<-传播(trans_matrix_complete,
channel_to,transition_probability)
通过应用 spread() 两个数据帧,矩阵输出具有相同的格式并且可以毫无问题地接受行名。
所以我怀疑这一切都与 dcast() 和 reshape2 包不再维护有关
此致
我有两个数据框。对两者应用相同的 dcast() 函数会得到不同的输出结果。两个数据集具有相同的结构但大小不同。第一个超过950行:
我申请的代码是:
trans_matrix_complete <- mod_attrib$transition_matrix
trans_matrix_complete[which(trans_matrix_complete$channel_from=="_3RDLIVE"),]
trans_matrix_complete <- rbind(trans_matrix_complete, df_dummy)
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')
我得到的 trans_matrix_complete 输出如下:
有些东西没有正常工作,因为只有几行的较小数据框我得到以下结果:
哪里
a) 行号不同。我不确定为什么在第一个案例中列出了两个点
b) 同样,尝试通过
将行名分配给数据框row.names(trans_matrix_complete) <- trans_matrix_complete$channel_from
不适用于大型数据框,因为尽管 row.names 联系人数据框显示与第一张图片完全一样,没有为行分配名称。
知道这种奇怪的行为吗?
我决定使用以下函数从 tidyverse 包的 dcast() 转移到 spread():
trans_matrix_complete<-传播(trans_matrix_complete, channel_to,transition_probability)
通过应用 spread() 两个数据帧,矩阵输出具有相同的格式并且可以毫无问题地接受行名。
所以我怀疑这一切都与 dcast() 和 reshape2 包不再维护有关
此致