gpt4 book ai didi

r - 如何在R中创建完全匹配的二进制矩阵

转载 作者:行者123 更新时间:2023-12-04 07:41:26 27 4
gpt4 key购买 nike

抱歉,如果这是一个愚蠢的问题,我觉得如果我知道如何正确表达它,我就可以很快得到答案!
简而言之:我有大量来自不同来源的样本。样本的具体来源并不重要,重要的是知道哪些样本来自同一来源。
所以,我现在拥有的是:

  Sample source
S1 A
S2 B
S3 B
S4 A
S5 A
我需要的是..
  S1 S2 S3 S4 S5
S1 1 0 0 1 1
S2 0 1 1 0 0
S3 0 1 1 0 0
S4 1 0 0 1 1
S5 1 0 0 1 1
任何帮助将不胜感激...

最佳答案

你可以试试tcrossprod + xtabs (或 table )如下

> tcrossprod(xtabs(~., df))
Sample
Sample S1 S2 S3 S4 S5
S1 1 0 0 1 1
S2 0 1 1 0 0
S3 0 1 1 0 0
S4 1 0 0 1 1
S5 1 0 0 1 1
或(感谢@user12728748 的评论)
> tcrossprod(table(df))
Sample
Sample S1 S2 S3 S4 S5
S1 1 0 0 1 1
S2 0 1 1 0 0
S3 0 1 1 0 0
S4 1 0 0 1 1
S5 1 0 0 1 1
数据
df <- data.frame(Sample = c("S1", "S2", "S3", "S4", "S5"), source = c("A", "B", "B", "A", "A"))

关于r - 如何在R中创建完全匹配的二进制矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67436226/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com