频率关系matrix

我有一个如下所示的数据集:

col1 | col2 | col3 A | yellow | ID1 B | yellow | ID1 A | red | ID2 C | blue | ID2 

我想要的是一个matrix,我可以看到A和B,A和C等共有多less个ID。

  | A | B | C A | -- | 1 | 1 B | 1 | -- | 0 C | 1 | 0 | -- 

像上面的东西。 我认为这个结构有一个合适的名字,但我找不到它。 我正在寻找Excel(首选)或R的解决scheme。最简单的方法是什么?

下面的问题将是我怎么知道哪些ID是共同的?

你可以这样做:

 m <- df[,-2] m <- table(m) m <- m %*% t(m) diag(m) <- NA # col1 # col1 ABC # A NA 1 1 # B 1 NA 0 # C 1 0 NA 

关键词search可能是关联matrix,双向networking/联盟networking,双模networking到单模networking,邻接matrix。

使用的数据:

 df<-read.table(header=T,sep="|",text="col1|col2|col3 A|yellow|ID1 B|yellow|ID1 A|red|ID2 C|blue|ID2")