Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
根据矩阵值在R中创建一定大小的组_R_Matrix_Grouping - Fatal编程技术网

根据矩阵值在R中创建一定大小的组

根据矩阵值在R中创建一定大小的组,r,matrix,grouping,R,Matrix,Grouping,我有30个样本,我想测试它们之间的相互作用。我可以同时测试4个交互(第一个与第二个交互,第二个与第三个交互,第三个与第四个交互,第四个与第一个交互)。 我想找出4对相互作用的最佳组 我创建了所有配对交互的矩阵: combinations1 <- combn (specimens, 2, fun = NULL, smiplify = TRUE) 组合1基本理念 set.seed(1) df <- as.data.frame(matrix(rnorm(40),ncol = 5)) 由

我有30个样本,我想测试它们之间的相互作用。我可以同时测试4个交互(第一个与第二个交互,第二个与第三个交互,第三个与第四个交互,第四个与第一个交互)。 我想找出4对相互作用的最佳组

我创建了所有配对交互的矩阵:

combinations1 <- combn (specimens, 2, fun = NULL, smiplify = TRUE)

组合1基本理念

set.seed(1)
df <- as.data.frame(matrix(rnorm(40),ncol = 5))
由于您打算将事物按4进行分组,并在每个组中进行链式配对,因此实际上需要通过两个步骤来完成:

  • 通过
    combn(df,4,…,simplify=FALSE)
    枚举大小4的所有组合,其中
    simplify=FALSE
    在列表中给出结果
  • combn(…)
    中,我们定义了一个函数
    FUN=函数(x)lappy(沿(x)方向的seq_,函数(k)x[c(k,k%%ncol(x)+1)]
    FUN=函数(x)lappy(沿(x)方向的seq_,函数(k)x[c(k,k%%length(x)+1)]
    ,对每个组合执行该函数以产生链式对

代码

combn(df,4,FUN = function(x) lapply(seq_along(x),function(k) x[c(k,k%%ncol(x)+1)]),simplify = FALSE)
以致

[[1]]
[[1]][[1]]
          V1          V2
1 -0.6264538  0.57578135
2  0.1836433 -0.30538839
3 -0.8356286  1.51178117
4  1.5952808  0.38984324
5  0.3295078 -0.62124058
6 -0.8204684 -2.21469989
7  0.4874291  1.12493092
8  0.7383247 -0.04493361

[[1]][[2]]
           V2          V3
1  0.57578135 -0.01619026
2 -0.30538839  0.94383621
3  1.51178117  0.82122120
4  0.38984324  0.59390132
5 -0.62124058  0.91897737
6 -2.21469989  0.78213630
7  1.12493092  0.07456498
8 -0.04493361 -1.98935170

[[1]][[3]]
           V3          V4
1 -0.01619026  0.61982575
2  0.94383621 -0.05612874
3  0.82122120 -0.15579551
4  0.59390132 -1.47075238
5  0.91897737 -0.47815006
6  0.78213630  0.41794156
7  0.07456498  1.35867955
8 -1.98935170 -0.10278773

[[1]][[4]]
           V4         V1
1  0.61982575 -0.6264538
2 -0.05612874  0.1836433
3 -0.15579551 -0.8356286
4 -1.47075238  1.5952808
5 -0.47815006  0.3295078
6  0.41794156 -0.8204684
7  1.35867955  0.4874291
8 -0.10278773  0.7383247


[[2]]
[[2]][[1]]
          V1          V2
1 -0.6264538  0.57578135
2  0.1836433 -0.30538839
3 -0.8356286  1.51178117
4  1.5952808  0.38984324
5  0.3295078 -0.62124058
6 -0.8204684 -2.21469989
7  0.4874291  1.12493092
8  0.7383247 -0.04493361

[[2]][[2]]
           V2          V3
1  0.57578135 -0.01619026
2 -0.30538839  0.94383621
3  1.51178117  0.82122120
4  0.38984324  0.59390132
5 -0.62124058  0.91897737
6 -2.21469989  0.78213630
7  1.12493092  0.07456498
8 -0.04493361 -1.98935170

[[2]][[3]]
           V3          V5
1 -0.01619026  0.38767161
2  0.94383621 -0.05380504
3  0.82122120 -1.37705956
4  0.59390132 -0.41499456
5  0.91897737 -0.39428995
6  0.78213630 -0.05931340
7  0.07456498  1.10002537
8 -1.98935170  0.76317575

[[2]][[4]]
           V5         V1
1  0.38767161 -0.6264538
2 -0.05380504  0.1836433
3 -1.37705956 -0.8356286
4 -0.41499456  1.5952808
5 -0.39428995  0.3295078
6 -0.05931340 -0.8204684
7  1.10002537  0.4874291
8  0.76317575  0.7383247


[[3]]
[[3]][[1]]
          V1          V2
1 -0.6264538  0.57578135
2  0.1836433 -0.30538839
3 -0.8356286  1.51178117
4  1.5952808  0.38984324
5  0.3295078 -0.62124058
6 -0.8204684 -2.21469989
7  0.4874291  1.12493092
8  0.7383247 -0.04493361

[[3]][[2]]
           V2          V4
1  0.57578135  0.61982575
2 -0.30538839 -0.05612874
3  1.51178117 -0.15579551
4  0.38984324 -1.47075238
5 -0.62124058 -0.47815006
6 -2.21469989  0.41794156
7  1.12493092  1.35867955
8 -0.04493361 -0.10278773

[[3]][[3]]
           V4          V5
1  0.61982575  0.38767161
2 -0.05612874 -0.05380504
3 -0.15579551 -1.37705956
4 -1.47075238 -0.41499456
5 -0.47815006 -0.39428995
6  0.41794156 -0.05931340
7  1.35867955  1.10002537
8 -0.10278773  0.76317575

[[3]][[4]]
           V5         V1
1  0.38767161 -0.6264538
2 -0.05380504  0.1836433
3 -1.37705956 -0.8356286
4 -0.41499456  1.5952808
5 -0.39428995  0.3295078
6 -0.05931340 -0.8204684
7  1.10002537  0.4874291
8  0.76317575  0.7383247


[[4]]
[[4]][[1]]
          V1          V3
1 -0.6264538 -0.01619026
2  0.1836433  0.94383621
3 -0.8356286  0.82122120
4  1.5952808  0.59390132
5  0.3295078  0.91897737
6 -0.8204684  0.78213630
7  0.4874291  0.07456498
8  0.7383247 -1.98935170

[[4]][[2]]
           V3          V4
1 -0.01619026  0.61982575
2  0.94383621 -0.05612874
3  0.82122120 -0.15579551
4  0.59390132 -1.47075238
5  0.91897737 -0.47815006
6  0.78213630  0.41794156
7  0.07456498  1.35867955
8 -1.98935170 -0.10278773

[[4]][[3]]
           V4          V5
1  0.61982575  0.38767161
2 -0.05612874 -0.05380504
3 -0.15579551 -1.37705956
4 -1.47075238 -0.41499456
5 -0.47815006 -0.39428995
6  0.41794156 -0.05931340
7  1.35867955  1.10002537
8 -0.10278773  0.76317575

[[4]][[4]]
           V5         V1
1  0.38767161 -0.6264538
2 -0.05380504  0.1836433
3 -1.37705956 -0.8356286
4 -0.41499456  1.5952808
5 -0.39428995  0.3295078
6 -0.05931340 -0.8204684
7  1.10002537  0.4874291
8  0.76317575  0.7383247


[[5]]
[[5]][[1]]
           V2          V3
1  0.57578135 -0.01619026
2 -0.30538839  0.94383621
3  1.51178117  0.82122120
4  0.38984324  0.59390132
5 -0.62124058  0.91897737
6 -2.21469989  0.78213630
7  1.12493092  0.07456498
8 -0.04493361 -1.98935170

[[5]][[2]]
           V3          V4
1 -0.01619026  0.61982575
2  0.94383621 -0.05612874
3  0.82122120 -0.15579551
4  0.59390132 -1.47075238
5  0.91897737 -0.47815006
6  0.78213630  0.41794156
7  0.07456498  1.35867955
8 -1.98935170 -0.10278773

[[5]][[3]]
           V4          V5
1  0.61982575  0.38767161
2 -0.05612874 -0.05380504
3 -0.15579551 -1.37705956
4 -1.47075238 -0.41499456
5 -0.47815006 -0.39428995
6  0.41794156 -0.05931340
7  1.35867955  1.10002537
8 -0.10278773  0.76317575

[[5]][[4]]
           V5          V2
1  0.38767161  0.57578135
2 -0.05380504 -0.30538839
3 -1.37705956  1.51178117
4 -0.41499456  0.38984324
5 -0.39428995 -0.62124058
6 -0.05931340 -2.21469989
7  1.10002537  1.12493092
8  0.76317575 -0.04493361
[[1]]
[[1]][[1]]
[1] "V1" "V2"

[[1]][[2]]
[1] "V2" "V3"

[[1]][[3]]
[1] "V3" "V4"

[[1]][[4]]
[1] "V4" "V1"


[[2]]
[[2]][[1]]
[1] "V1" "V2"

[[2]][[2]]
[1] "V2" "V3"

[[2]][[3]]
[1] "V3" "V5"

[[2]][[4]]
[1] "V5" "V1"


[[3]]
[[3]][[1]]
[1] "V1" "V2"

[[3]][[2]]
[1] "V2" "V4"

[[3]][[3]]
[1] "V4" "V5"

[[3]][[4]]
[1] "V5" "V1"


[[4]]
[[4]][[1]]
[1] "V1" "V3"

[[4]][[2]]
[1] "V3" "V4"

[[4]][[3]]
[1] "V4" "V5"

[[4]][[4]]
[1] "V5" "V1"


[[5]]
[[5]][[1]]
[1] "V2" "V3"

[[5]][[2]]
[1] "V3" "V4"

[[5]][[3]]
[1] "V4" "V5"

[[5]][[4]]
[1] "V5" "V2"

编辑

如果您只需要列名,可以尝试

combn(names(df),4,FUN = function(x) lapply(seq_along(x),function(k) x[c(k,k%%length(x)+1)]),simplify = FALSE)
以致

[[1]]
[[1]][[1]]
          V1          V2
1 -0.6264538  0.57578135
2  0.1836433 -0.30538839
3 -0.8356286  1.51178117
4  1.5952808  0.38984324
5  0.3295078 -0.62124058
6 -0.8204684 -2.21469989
7  0.4874291  1.12493092
8  0.7383247 -0.04493361

[[1]][[2]]
           V2          V3
1  0.57578135 -0.01619026
2 -0.30538839  0.94383621
3  1.51178117  0.82122120
4  0.38984324  0.59390132
5 -0.62124058  0.91897737
6 -2.21469989  0.78213630
7  1.12493092  0.07456498
8 -0.04493361 -1.98935170

[[1]][[3]]
           V3          V4
1 -0.01619026  0.61982575
2  0.94383621 -0.05612874
3  0.82122120 -0.15579551
4  0.59390132 -1.47075238
5  0.91897737 -0.47815006
6  0.78213630  0.41794156
7  0.07456498  1.35867955
8 -1.98935170 -0.10278773

[[1]][[4]]
           V4         V1
1  0.61982575 -0.6264538
2 -0.05612874  0.1836433
3 -0.15579551 -0.8356286
4 -1.47075238  1.5952808
5 -0.47815006  0.3295078
6  0.41794156 -0.8204684
7  1.35867955  0.4874291
8 -0.10278773  0.7383247


[[2]]
[[2]][[1]]
          V1          V2
1 -0.6264538  0.57578135
2  0.1836433 -0.30538839
3 -0.8356286  1.51178117
4  1.5952808  0.38984324
5  0.3295078 -0.62124058
6 -0.8204684 -2.21469989
7  0.4874291  1.12493092
8  0.7383247 -0.04493361

[[2]][[2]]
           V2          V3
1  0.57578135 -0.01619026
2 -0.30538839  0.94383621
3  1.51178117  0.82122120
4  0.38984324  0.59390132
5 -0.62124058  0.91897737
6 -2.21469989  0.78213630
7  1.12493092  0.07456498
8 -0.04493361 -1.98935170

[[2]][[3]]
           V3          V5
1 -0.01619026  0.38767161
2  0.94383621 -0.05380504
3  0.82122120 -1.37705956
4  0.59390132 -0.41499456
5  0.91897737 -0.39428995
6  0.78213630 -0.05931340
7  0.07456498  1.10002537
8 -1.98935170  0.76317575

[[2]][[4]]
           V5         V1
1  0.38767161 -0.6264538
2 -0.05380504  0.1836433
3 -1.37705956 -0.8356286
4 -0.41499456  1.5952808
5 -0.39428995  0.3295078
6 -0.05931340 -0.8204684
7  1.10002537  0.4874291
8  0.76317575  0.7383247


[[3]]
[[3]][[1]]
          V1          V2
1 -0.6264538  0.57578135
2  0.1836433 -0.30538839
3 -0.8356286  1.51178117
4  1.5952808  0.38984324
5  0.3295078 -0.62124058
6 -0.8204684 -2.21469989
7  0.4874291  1.12493092
8  0.7383247 -0.04493361

[[3]][[2]]
           V2          V4
1  0.57578135  0.61982575
2 -0.30538839 -0.05612874
3  1.51178117 -0.15579551
4  0.38984324 -1.47075238
5 -0.62124058 -0.47815006
6 -2.21469989  0.41794156
7  1.12493092  1.35867955
8 -0.04493361 -0.10278773

[[3]][[3]]
           V4          V5
1  0.61982575  0.38767161
2 -0.05612874 -0.05380504
3 -0.15579551 -1.37705956
4 -1.47075238 -0.41499456
5 -0.47815006 -0.39428995
6  0.41794156 -0.05931340
7  1.35867955  1.10002537
8 -0.10278773  0.76317575

[[3]][[4]]
           V5         V1
1  0.38767161 -0.6264538
2 -0.05380504  0.1836433
3 -1.37705956 -0.8356286
4 -0.41499456  1.5952808
5 -0.39428995  0.3295078
6 -0.05931340 -0.8204684
7  1.10002537  0.4874291
8  0.76317575  0.7383247


[[4]]
[[4]][[1]]
          V1          V3
1 -0.6264538 -0.01619026
2  0.1836433  0.94383621
3 -0.8356286  0.82122120
4  1.5952808  0.59390132
5  0.3295078  0.91897737
6 -0.8204684  0.78213630
7  0.4874291  0.07456498
8  0.7383247 -1.98935170

[[4]][[2]]
           V3          V4
1 -0.01619026  0.61982575
2  0.94383621 -0.05612874
3  0.82122120 -0.15579551
4  0.59390132 -1.47075238
5  0.91897737 -0.47815006
6  0.78213630  0.41794156
7  0.07456498  1.35867955
8 -1.98935170 -0.10278773

[[4]][[3]]
           V4          V5
1  0.61982575  0.38767161
2 -0.05612874 -0.05380504
3 -0.15579551 -1.37705956
4 -1.47075238 -0.41499456
5 -0.47815006 -0.39428995
6  0.41794156 -0.05931340
7  1.35867955  1.10002537
8 -0.10278773  0.76317575

[[4]][[4]]
           V5         V1
1  0.38767161 -0.6264538
2 -0.05380504  0.1836433
3 -1.37705956 -0.8356286
4 -0.41499456  1.5952808
5 -0.39428995  0.3295078
6 -0.05931340 -0.8204684
7  1.10002537  0.4874291
8  0.76317575  0.7383247


[[5]]
[[5]][[1]]
           V2          V3
1  0.57578135 -0.01619026
2 -0.30538839  0.94383621
3  1.51178117  0.82122120
4  0.38984324  0.59390132
5 -0.62124058  0.91897737
6 -2.21469989  0.78213630
7  1.12493092  0.07456498
8 -0.04493361 -1.98935170

[[5]][[2]]
           V3          V4
1 -0.01619026  0.61982575
2  0.94383621 -0.05612874
3  0.82122120 -0.15579551
4  0.59390132 -1.47075238
5  0.91897737 -0.47815006
6  0.78213630  0.41794156
7  0.07456498  1.35867955
8 -1.98935170 -0.10278773

[[5]][[3]]
           V4          V5
1  0.61982575  0.38767161
2 -0.05612874 -0.05380504
3 -0.15579551 -1.37705956
4 -1.47075238 -0.41499456
5 -0.47815006 -0.39428995
6  0.41794156 -0.05931340
7  1.35867955  1.10002537
8 -0.10278773  0.76317575

[[5]][[4]]
           V5          V2
1  0.38767161  0.57578135
2 -0.05380504 -0.30538839
3 -1.37705956  1.51178117
4 -0.41499456  0.38984324
5 -0.39428995 -0.62124058
6 -0.05931340 -2.21469989
7  1.10002537  1.12493092
8  0.76317575 -0.04493361
[[1]]
[[1]][[1]]
[1] "V1" "V2"

[[1]][[2]]
[1] "V2" "V3"

[[1]][[3]]
[1] "V3" "V4"

[[1]][[4]]
[1] "V4" "V1"


[[2]]
[[2]][[1]]
[1] "V1" "V2"

[[2]][[2]]
[1] "V2" "V3"

[[2]][[3]]
[1] "V3" "V5"

[[2]][[4]]
[1] "V5" "V1"


[[3]]
[[3]][[1]]
[1] "V1" "V2"

[[3]][[2]]
[1] "V2" "V4"

[[3]][[3]]
[1] "V4" "V5"

[[3]][[4]]
[1] "V5" "V1"


[[4]]
[[4]][[1]]
[1] "V1" "V3"

[[4]][[2]]
[1] "V3" "V4"

[[4]][[3]]
[1] "V4" "V5"

[[4]][[4]]
[1] "V5" "V1"


[[5]]
[[5]][[1]]
[1] "V2" "V3"

[[5]][[2]]
[1] "V3" "V4"

[[5]][[3]]
[1] "V4" "V5"

[[5]][[4]]
[1] "V5" "V2"
数据

set.seed(1)
df <- as.data.frame(matrix(rnorm(40),ncol = 5))
set.seed(1)

谢谢你,但不完全是。简单来说,我有30个个体(细菌类型),所以如果我想用其余的个体测试每个个体,我会得到435对。我可以同时测试4个人(a,b,c,d),这也意味着同时测试4对:a-b,b-c,c-d,d-a。因此,我创建了对,我想将这些对分组成4组,如前所述。是的,但我没有任何值。例如,我有30个人,我想知道他们之间是如何互动的。我可以让他们坐在桌子旁。只有坐在每个oter旁边的人才能互动(我可以测试他们的互动),而不是斜坐的人。所以我创建了配对矩阵(两行:配对的第一个人和配对的第二个人),必须进行测试(例如,1-2,1-3,1-4,…,2-3,2-4,2-5,…,29-30)。所以现在我想创建组:如何每次让4个人坐在这张桌子上,在最短的时间内测试所有人。我希望这能让事情变得清楚一点?@Katarina_1我希望我的最新更新符合你的意图谢谢,你很接近了。但不需要每种组合的数据。我没有每一列的数据。我只需要一个所有组(四对)的列表。如果你解释了代码的每一部分,那就太神奇了,也许我可以自己试试?