R 在图形或文本输出中显示combn()的不同排列
假设我有以下清单:R 在图形或文本输出中显示combn()的不同排列,r,R,假设我有以下清单: colors <- c("red", "green", "purple", "yellow") 使用这个输出,我可以快速得到所有不同变量的第一个组合。最好是,我想将其输出为一个图形,但我还没有弄清楚如何将其正确地保存为一个表。任何帮助都将不胜感激 而且,我的真实数据比这个大得多。要以可读格式输出文件,我使用文本输出。我使用以下代码创建每个组合的矩阵,并从plyr包中,使用rbind.fill.matrix创建单个矩阵,然后将其写入文件。这是我使用的代码 col1 &l
colors <- c("red", "green", "purple", "yellow")
使用这个输出,我可以快速得到所有不同变量的第一个组合。最好是,我想将其输出为一个图形,但我还没有弄清楚如何将其正确地保存为一个表。任何帮助都将不胜感激
而且,我的真实数据比这个大得多。要以可读格式输出文件,我使用文本输出。我使用以下代码创建每个组合的矩阵,并从
plyr
包中,使用rbind.fill.matrix
创建单个矩阵,然后将其写入文件。这是我使用的代码
col1 <- matrix(unlist(combn(colors, 1, simplify=FALSE)), ncol=1, byrow=TRUE)
col2 <- matrix(unlist(combn(colors, 2, simplify=FALSE)), ncol=2, byrow=TRUE)
col3 <- matrix(unlist(combn(colors, 3, simplify=FALSE)), ncol=3, byrow=TRUE)
col4 <- matrix(unlist(combn(colors, 4, simplify=FALSE)), ncol=4, byrow=TRUE)
col1您希望使用什么方法来构建此图?你能解释一下从col1、col2、col3和col4组织图中节点和边的方法吗?你似乎有绿色、紫色、黄色
和紫色、黄色、绿色
@Henry。好消息,在col2的第二次“迭代”中,红色实际上有三个附加元素,绿色
,紫色
,和黄色
。没有紫色
,黄色
,绿色
。我将尝试解决此格式错误。@josilber我一直在尝试解决如何将combn()
结果编译成图形包可读的内容。
total_color_combo <- length(col1) + length(col2) + length(col3 ) + length(col4)
Red Green Purple
/ \ / \ \
Green Purple Yellow Yellow
/ \ \ \
Purple Yellow Yellow Green
/
Yellow
col1 <- matrix(unlist(combn(colors, 1, simplify=FALSE)), ncol=1, byrow=TRUE)
col2 <- matrix(unlist(combn(colors, 2, simplify=FALSE)), ncol=2, byrow=TRUE)
col3 <- matrix(unlist(combn(colors, 3, simplify=FALSE)), ncol=3, byrow=TRUE)
col4 <- matrix(unlist(combn(colors, 4, simplify=FALSE)), ncol=4, byrow=TRUE)
cColors <- rbind.fill.matrix(col1, col2, col3, col4)
cColors[is.na(cColors)] <- ""