【问题标题】:Finding the count of Interactions between Members located in the Dataset查找位于数据集中的成员之间的交互计数
【发布时间】:2012-12-13 11:58:26
【问题描述】:

我有一个传递流量数据,显示成员之间的传递流量,here's the sample dataset

它以连续的行显示成员之间的交互。我想计算这些交互,并获得一个新数据集,该数据集显示每个成员之间发生了多少次交互,方向无关紧要

例如:

between 26 and 11 = X
between 26 and 27 = Y

我只是想不通我可以使用哪个函数以及如何为这个计算编写代码。谢谢

【问题讨论】:

    标签: r dataframe


    【解决方案1】:

    您可以使用 zoo 包中的 rollaply 函数来查找所有交互。可以使用table 计算这些交互的频率。 (我假设您的对象称为dat。)

    library(zoo)
    table(as.data.frame(rollapply(dat[[1]], 2, sort)))
    

    结果:

        V2
    V1    4  8 10 11 13 17 19 25 26 27 53
      4   2 13 17  1  2  5  6  3  1  9  4
      8   0  2 14 11 10  4  5  0 13 13 11
      10  0  0  3  9  7  2  4  2  8 11  8
      11  0  0  0  1  6  5  4  4  5  4 25
      13  0  0  0  0  0  1  3  5  7  9  8
      17  0  0  0  0  0  0  1  1  1  5  5
      19  0  0  0  0  0  0  1  1  1  5  4
      25  0  0  0  0  0  0  0  0  5  8  5
      26  0  0  0  0  0  0  0  0  1  5  3
      27  0  0  0  0  0  0  0  0  0  0  1
      53  0  0  0  0  0  0  0  0  0  0  1
    

    矩阵的下三角部分仅包含零,因为方向无关紧要。

    如果您对相同值之间的交互不感兴趣,请使用以下命令:

    table(as.data.frame(rollapply(rle(dat[[1]])$values, 2, sort)))
    
        V2
    V1    8 10 11 13 17 19 25 26 27 53
      4  13 17  1  2  5  6  3  1  9  4
      8   0 14 11 10  4  5  0 13 13 11
      10  0  0  9  7  2  4  2  8 11  8
      11  0  0  0  6  5  4  4  5  4 25
      13  0  0  0  0  1  3  5  7  9  8
      17  0  0  0  0  0  1  1  1  5  5
      19  0  0  0  0  0  0  1  1  5  4
      25  0  0  0  0  0  0  0  5  8  5
      26  0  0  0  0  0  0  0  0  5  3
      27  0  0  0  0  0  0  0  0  0  1
    

    【讨论】:

    • 在这个计算之后有一个相当有趣的非 R 问题:stackoverflow.com/questions/13860390/…
    • @Sven,我怎样才能让下三角包含交互作用?
    • @forochelian table(as.data.frame(rollapply(rle(dat[[1]])$values, 2, sort))[c(2,1)]) 或将函数 t 与现有矩阵一起使用
    • @Sven,哦,对不起,我的意思是,上下三角形都有。
    • @forochelian 两个三角形应该相同吗?
    猜你喜欢
    • 2021-09-15
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 2013-02-13
    • 2021-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多