Rfast tutorial

Mi Lin

2022-11-12

什么是Rfast

Rfast 提供了一系列高效的分析函数,例如R中自带的outer函数,这个向量可以计算两个向量的外积(outer product)

require(Rfast)
## Loading required package: Rfast
## Loading required package: Rcpp
## Loading required package: RcppZiggurat
x <- 1:9; names(x) <- x
y <- 2:8; 
names(y) <- paste(y,":", sep = "")
outer(y, x, `^`)
##    1  2   3    4     5      6       7        8         9
## 2: 2  4   8   16    32     64     128      256       512
## 3: 3  9  27   81   243    729    2187     6561     19683
## 4: 4 16  64  256  1024   4096   16384    65536    262144
## 5: 5 25 125  625  3125  15625   78125   390625   1953125
## 6: 6 36 216 1296  7776  46656  279936  1679616  10077696
## 7: 7 49 343 2401 16807 117649  823543  5764801  40353607
## 8: 8 64 512 4096 32768 262144 2097152 16777216 134217728

当数据量变大之后,outer函数会变得很慢。这个时候,Rfast 中的Outer函数就很有用了。需要注意的是,安装的时候同时会安装RcppArmadillo,此时mac电脑可能会报错ERROR: compilation failed for package ‘RcppArmadillo’ 。次数需要打开终端,运行如下代码:

curl -O http://r.research.att.com/libs/gfortran-4.8.2-darwin13.tar.bz2
sudo tar fvxz gfortran-4.8.2-darwin13.tar.bz2 -C /

接下来介绍这个包的常用函数使用。

计算auc

## 200 variables, hence 200 AUCs will be calculated
x <- matrix( rnorm(100 * 200), ncol = 200 )
ina <- rbinom(100, 1, 0.6)
system.time( colaucs(ina, x) )
##    user  system elapsed 
##   0.002   0.000   0.002
a <- colaucs(ina, x)  # 这个函数是计算多列的auc,这个包提供了很多类似函数。例如,colanovas 多列的方差分析
b <- auc(ina, x[, 1])
x <- NULL

choose 函数,组合函数

x <- sample(20:30, 100, replace = TRUE)
res<-Choose(x, 4)
res<-Lchoose(x, 4)

col和row函数

判断矩阵对行和列

colAny(x)
rowAny(x)
colAll(x, parallel = FALSE)
rowAll(x, parallel = FALSE)

看一个例子:

x <- matrix(as.logical(rbinom(100*100,1,0.5)),100,100)
system.time( a<-colAny(x) )
##    user  system elapsed 
##       0       0       0

这里提供了非常多的col函数,例如打乱次序,shuffle

x <- matrix( rnorm(100 * 100), ncol = 100 )
system.time( colShuffle(x) )
##    user  system elapsed 
##   0.001   0.000   0.001
system.time( rowShuffle(x) )
##    user  system elapsed 
##   0.001   0.001   0.001

其他跟多的函数查看帮助,很多时候不需要些循环,用这里提供的函数,里面很多代码是使用C++写的。

计算两个矩阵的距离

x <- as.matrix(iris[1:50, 1:4])
y <- as.matrix(iris[51:100, 1:4])
res<-dcor(x, y)

res<-dcor.ttest(x, y) # 对矩阵距离的假设检验
res
##      BC dcor           df    statistic      p-value 
##   -0.0271709 1174.0000000   -0.9313190    0.8240600

矩阵方差和协方差。

x <- as.matrix(iris[1:50, 1:4])
y <- as.matrix(iris[51:100, 1:4])
res <- dcov(x, y)

res
## [1] 0.1025087
res <- dvar(x[, 1])

res
## [1] 0.2262887

这里提供了很多和矩阵相关的函数。例如填补矩阵的对角线。

x <- matrix(rbinom(10*10,1,0.5),10,10)
head(x,3)
##      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
## [1,]    1    1    0    1    1    1    0    0    0     1
## [2,]    1    1    1    0    0    1    0    0    0     0
## [3,]    0    1    1    0    0    1    0    0    1     1
f <- Diag.fill(x,100)
head(f,3)
##      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
## [1,]  100    1    0    1    1    1    0    0    0     1
## [2,]    1  100    1    0    0    1    0    0    0     0
## [3,]    0    1  100    0    0    1    0    0    1     1

KNN

k-NN algorithm using the arc cosinus distance

x <- as.matrix(iris[, 1:4])
y <- as.numeric(iris[, 5])
id <- sample(1:150, 120)
mod <- knn(x[-id, ], y[id], x[id, ], k = c(4, 5, 6,7), type = "C", mem.eff = FALSE)
mod # Predicted values of y for 3 values of k. 
##       [,1] [,2] [,3] [,4]
##  [1,]    1    1    1    1
##  [2,]    1    1    1    1
##  [3,]    1    1    1    1
##  [4,]    1    1    1    1
##  [5,]    1    1    1    1
##  [6,]    1    1    1    1
##  [7,]    1    1    1    1
##  [8,]    1    1    1    1
##  [9,]    1    1    1    1
## [10,]    1    1    1    1
## [11,]    1    1    1    1
## [12,]    2    2    2    2
## [13,]    2    3    2    2
## [14,]    2    2    2    2
## [15,]    2    2    2    2
## [16,]    2    2    2    2
## [17,]    2    2    2    2
## [18,]    2    2    2    2
## [19,]    3    3    3    3
## [20,]    3    3    3    3
## [21,]    3    3    3    3
## [22,]    2    2    2    3
## [23,]    3    3    3    3
## [24,]    3    3    3    3
## [25,]    3    3    3    3
## [26,]    2    3    2    3
## [27,]    3    3    3    3
## [28,]    3    3    3    3
## [29,]    3    3    3    3
## [30,]    3    3    3    3
res<-table(mod[, 1], y[-id] ) 
res# Confusion matrix for k = 4
##    
##      1  2  3
##   1 11  0  0
##   2  0  7  2
##   3  0  0 10
res<-table(mod[, 2], y[-id] ) 
res# Confusion matrix for k = 5
##    
##      1  2  3
##   1 11  0  0
##   2  0  6  1
##   3  0  1 11
res<-table(mod[, 3], y[-id] )  
res# Confusion matrix for k = 6
##    
##      1  2  3
##   1 11  0  0
##   2  0  7  2
##   3  0  0 10

其他函数还包括:knn.cv,dirknn

距离矩阵

Energy distance between matrices.

x <- as.matrix( iris[1:50, 1:4] )
y <- as.matrix( iris[51:100, 1:4] )
res<-edist(x, y)
x <- matrix(rnorm(50 * 10), ncol = 10)
a1 <- Dist(x)
a1
##           [,1]     [,2]     [,3]     [,4]     [,5]     [,6]     [,7]     [,8]
##  [1,] 0.000000 3.953859 4.073586 3.399511 4.063808 3.783132 5.594110 4.842949
##  [2,] 3.953859 0.000000 4.032940 4.697008 4.925501 5.141830 6.546689 4.343716
##  [3,] 4.073586 4.032940 0.000000 3.554907 5.740386 3.200805 4.720493 4.993133
##  [4,] 3.399511 4.697008 3.554907 0.000000 5.350930 3.749545 4.269591 5.782048
##  [5,] 4.063808 4.925501 5.740386 5.350930 0.000000 5.826182 6.890281 5.687156
##  [6,] 3.783132 5.141830 3.200805 3.749545 5.826182 0.000000 4.912672 4.636121
##  [7,] 5.594110 6.546689 4.720493 4.269591 6.890281 4.912672 0.000000 5.991509
##  [8,] 4.842949 4.343716 4.993133 5.782048 5.687156 4.636121 5.991509 0.000000
##  [9,] 3.722002 5.497144 4.333847 4.292727 5.326577 3.689481 5.141116 4.359412
## [10,] 3.492652 3.795811 3.603677 4.124332 5.242377 4.001255 4.851954 2.549552
## [11,] 4.389002 4.182396 3.590432 2.897957 5.439775 3.648557 5.095792 5.143489
## [12,] 4.529564 4.139635 2.984801 3.969461 5.909277 3.230230 6.291563 4.723688
## [13,] 5.180119 4.816101 3.952022 5.574337 6.659000 4.850950 5.993802 4.718619
## [14,] 3.361559 3.877193 3.022402 4.165899 4.965325 3.189541 4.165682 3.700387
## [15,] 4.134264 5.119965 3.487693 4.485513 5.069096 3.500367 3.872906 3.402701
## [16,] 4.271740 3.639535 4.291487 4.024924 5.435113 3.650816 5.484728 4.507192
## [17,] 5.178779 4.536050 4.471871 5.471230 6.216243 4.734441 5.583129 4.641795
## [18,] 3.707253 4.348067 3.806907 1.889127 5.462016 3.418222 4.625573 5.145352
## [19,] 5.216513 4.142453 3.823442 4.097138 6.800016 5.163805 4.271107 4.314710
## [20,] 4.778222 5.402959 3.271390 5.047139 6.813920 3.936245 6.048612 4.675418
## [21,] 5.821945 4.795019 3.982245 4.788057 7.245070 4.903330 4.327815 4.127381
## [22,] 3.674705 4.605479 3.062779 2.925109 5.243578 3.278514 4.892177 3.949457
## [23,] 5.537951 4.691071 4.499143 4.907183 5.981488 4.959048 5.808613 5.415679
## [24,] 4.434725 5.080205 5.939470 5.087719 6.529694 6.239746 7.696278 5.551882
## [25,] 4.631549 4.118011 4.412005 4.248518 6.253959 4.171134 5.514632 4.313499
## [26,] 5.202632 4.515506 3.368156 4.107981 5.209718 5.100326 5.140615 5.641054
## [27,] 4.682598 5.538121 4.554007 5.059826 7.538659 4.410441 6.040715 4.301962
## [28,] 5.165738 4.070789 2.358940 4.724710 6.554926 4.415605 5.863863 4.879645
## [29,] 4.118099 4.405388 4.237827 3.677159 4.775422 5.492240 5.421922 5.578206
## [30,] 3.651070 5.205320 3.612055 4.863936 6.033568 2.663137 5.503245 3.828066
## [31,] 4.580285 2.430798 3.702286 4.714982 5.422621 4.354403 5.807609 4.418051
## [32,] 4.381831 2.985055 2.696706 4.499594 5.565654 4.672600 4.913479 3.996332
## [33,] 3.706833 2.429592 4.306032 4.266712 4.052883 4.754482 5.876442 3.786251
## [34,] 4.109224 4.939718 4.650209 4.146950 5.801080 3.476846 5.230734 3.983218
## [35,] 3.273141 4.309684 4.106517 3.017715 5.843966 3.941666 4.836179 4.158845
## [36,] 3.920182 5.354524 5.347121 2.742303 5.326000 4.402750 4.359214 5.174630
## [37,] 5.509550 5.540262 4.578424 4.490613 7.253788 5.465785 5.344294 5.243283
## [38,] 5.356362 3.605115 3.945499 5.141545 7.172155 5.162743 6.802460 4.656345
## [39,] 3.485179 4.180959 3.343970 4.349481 5.767599 2.956801 5.781632 3.850191
## [40,] 4.574221 3.529443 2.380352 4.841873 5.821904 3.870889 5.780815 4.511928
## [41,] 3.293281 3.955602 2.046994 3.975207 4.895441 2.330250 4.740362 3.879691
## [42,] 5.824681 3.478399 5.398324 6.256416 6.713485 6.079985 6.458893 3.957464
## [43,] 4.110880 4.014348 2.511762 3.338085 4.640913 3.857035 5.185279 5.018863
## [44,] 4.829832 4.861999 3.636267 3.273373 6.262832 3.564956 4.244102 4.993874
## [45,] 3.294980 4.020703 3.188833 3.223507 6.349476 4.182313 5.582724 6.014308
## [46,] 4.145018 4.096250 2.088114 4.132913 6.575778 3.396601 5.523394 5.193452
## [47,] 4.874760 4.568892 4.276410 3.722178 6.397267 6.021416 5.292845 7.338947
## [48,] 3.855430 4.436720 3.394138 3.147618 6.315503 2.237789 5.761870 5.066676
## [49,] 6.359725 5.196029 2.887323 5.899372 6.747627 5.306712 6.445875 5.592403
## [50,] 5.300048 4.909696 2.734146 4.560244 6.577865 3.206060 5.403792 4.676442
##           [,9]    [,10]    [,11]    [,12]    [,13]    [,14]    [,15]    [,16]
##  [1,] 3.722002 3.492652 4.389002 4.529564 5.180119 3.361559 4.134264 4.271740
##  [2,] 5.497144 3.795811 4.182396 4.139635 4.816101 3.877193 5.119965 3.639535
##  [3,] 4.333847 3.603677 3.590432 2.984801 3.952022 3.022402 3.487693 4.291487
##  [4,] 4.292727 4.124332 2.897957 3.969461 5.574337 4.165899 4.485513 4.024924
##  [5,] 5.326577 5.242377 5.439775 5.909277 6.659000 4.965325 5.069096 5.435113
##  [6,] 3.689481 4.001255 3.648557 3.230230 4.850950 3.189541 3.500367 3.650816
##  [7,] 5.141116 4.851954 5.095792 6.291563 5.993802 4.165682 3.872906 5.484728
##  [8,] 4.359412 2.549552 5.143489 4.723688 4.718619 3.700387 3.402701 4.507192
##  [9,] 0.000000 3.227960 5.589123 3.929998 4.091831 2.827902 3.396663 5.197697
## [10,] 3.227960 0.000000 4.398538 3.967713 4.480853 2.720264 3.033255 4.691253
## [11,] 5.589123 4.398538 0.000000 3.724264 6.143092 4.703847 4.698068 3.321797
## [12,] 3.929998 3.967713 3.724264 0.000000 4.244980 3.906679 4.628413 4.048271
## [13,] 4.091831 4.480853 6.143092 4.244980 0.000000 3.388536 3.827989 4.551560
## [14,] 2.827902 2.720264 4.703847 3.906679 3.388536 0.000000 2.621248 3.929284
## [15,] 3.396663 3.033255 4.698068 4.628413 3.827989 2.621248 0.000000 4.334493
## [16,] 5.197697 4.691253 3.321797 4.048271 4.551560 3.929284 4.334493 0.000000
## [17,] 4.469957 4.785810 5.363415 4.228368 3.172519 3.430078 4.393056 3.856885
## [18,] 3.704446 4.016341 3.081745 3.103854 4.861941 3.743267 4.467856 3.197008
## [19,] 5.009994 2.980184 4.456690 4.717897 4.741865 3.891516 4.199360 4.767726
## [20,] 3.542061 3.969971 5.559074 3.367058 2.581942 3.792256 3.599768 5.138514
## [21,] 5.634828 3.826630 3.873197 4.669844 5.010460 4.444149 4.143480 4.455497
## [22,] 3.660818 2.686021 3.184142 3.252913 4.784045 3.842764 3.040233 4.260266
## [23,] 4.143385 4.348076 5.517723 3.957927 5.171667 3.620755 5.295514 5.354042
## [24,] 5.204120 4.337320 5.603468 4.979759 6.627687 5.928456 6.497989 6.372772
## [25,] 4.030502 4.252752 4.564643 3.473219 3.193663 3.633078 4.382589 2.694371
## [26,] 4.523646 4.714698 4.742495 3.892548 3.671495 3.900593 4.137657 4.509101
## [27,] 3.484140 3.459151 5.946912 4.246026 3.644190 4.080728 4.313505 5.346032
## [28,] 5.445466 4.276062 3.855875 3.228801 3.959074 4.312323 4.294947 4.382139
## [29,] 4.482488 4.400837 5.142495 4.936103 4.077915 4.212563 4.154518 4.563143
## [30,] 3.279742 3.507407 5.121938 4.012227 3.550804 3.022587 2.720318 4.366048
## [31,] 5.117755 4.346880 3.982356 3.544788 3.973252 3.312352 4.666988 2.636070
## [32,] 4.241799 2.883818 4.740191 3.892212 3.073062 2.463818 3.515584 4.352322
## [33,] 4.405653 3.605688 3.935851 3.773970 4.427736 3.527618 4.375538 3.188252
## [34,] 3.221981 3.280339 5.027132 4.321538 4.816718 3.256289 3.825344 4.194258
## [35,] 3.698973 3.254347 4.048936 4.065224 4.040023 3.729184 3.695822 3.403092
## [36,] 4.044068 4.273585 4.181133 5.103814 5.905339 4.375410 4.500313 3.937718
## [37,] 4.815662 4.505922 5.548322 4.955167 3.500318 4.822698 4.204640 4.811924
## [38,] 5.124066 3.598885 4.900699 3.156206 4.913283 4.456576 5.691436 5.331506
## [39,] 3.557738 3.171571 4.032724 2.749641 4.405848 3.258174 4.022222 4.246291
## [40,] 4.508940 4.114697 4.493874 2.929606 2.599109 3.020718 3.830754 3.726430
## [41,] 3.045629 2.925210 4.022222 2.911526 3.583712 1.681831 2.651939 3.912734
## [42,] 5.737014 4.510657 6.042867 5.398976 3.804204 4.120908 5.081799 4.098791
## [43,] 4.085984 3.803336 3.954690 3.314508 4.126153 3.387451 3.537156 4.113937
## [44,] 4.636656 4.584778 3.134217 3.602501 4.239072 4.046317 3.898233 2.715679
## [45,] 4.874552 4.010557 4.324310 4.183838 5.488987 3.946271 5.334084 5.025158
## [46,] 4.730744 4.162853 4.437786 3.492872 3.305758 3.393719 4.020240 3.918167
## [47,] 6.668644 5.546102 4.349288 5.795588 6.820881 5.280817 6.315599 5.635171
## [48,] 4.235449 4.133873 3.179336 2.347933 5.037623 3.977943 4.796777 3.442263
## [49,] 6.099283 4.920640 5.074036 4.251870 4.987358 4.940401 4.646889 5.983022
## [50,] 4.702018 4.414258 4.231767 3.160468 3.389439 3.803856 3.433159 3.665098
##          [,17]    [,18]    [,19]    [,20]    [,21]    [,22]    [,23]    [,24]
##  [1,] 5.178779 3.707253 5.216513 4.778222 5.821945 3.674705 5.537951 4.434725
##  [2,] 4.536050 4.348067 4.142453 5.402959 4.795019 4.605479 4.691071 5.080205
##  [3,] 4.471871 3.806907 3.823442 3.271390 3.982245 3.062779 4.499143 5.939470
##  [4,] 5.471230 1.889127 4.097138 5.047139 4.788057 2.925109 4.907183 5.087719
##  [5,] 6.216243 5.462016 6.800016 6.813920 7.245070 5.243578 5.981488 6.529694
##  [6,] 4.734441 3.418222 5.163805 3.936245 4.903330 3.278514 4.959048 6.239746
##  [7,] 5.583129 4.625573 4.271107 6.048612 4.327815 4.892177 5.808613 7.696278
##  [8,] 4.641795 5.145352 4.314710 4.675418 4.127381 3.949457 5.415679 5.551882
##  [9,] 4.469957 3.704446 5.009994 3.542061 5.634828 3.660818 4.143385 5.204120
## [10,] 4.785810 4.016341 2.980184 3.969971 3.826630 2.686021 4.348076 4.337320
## [11,] 5.363415 3.081745 4.456690 5.559074 3.873197 3.184142 5.517723 5.603468
## [12,] 4.228368 3.103854 4.717897 3.367058 4.669844 3.252913 3.957927 4.979759
## [13,] 3.172519 4.861941 4.741865 2.581942 5.010460 4.784045 5.171667 6.627687
## [14,] 3.430078 3.743267 3.891516 3.792256 4.444149 3.842764 3.620755 5.928456
## [15,] 4.393056 4.467856 4.199360 3.599768 4.143480 3.040233 5.295514 6.497989
## [16,] 3.856885 3.197008 4.767726 5.138514 4.455497 4.260266 5.354042 6.372772
## [17,] 0.000000 4.231655 5.220992 4.262557 4.388166 5.346931 5.076538 6.294373
## [18,] 4.231655 0.000000 4.140376 4.653953 4.450217 3.282568 4.147782 4.845560
## [19,] 5.220992 4.140376 0.000000 4.923537 2.869729 3.694383 4.467012 5.752742
## [20,] 4.262557 4.653953 4.923537 0.000000 4.846812 3.546962 5.610823 5.691587
## [21,] 4.388166 4.450217 2.869729 4.846812 0.000000 3.995858 5.762504 6.063013
## [22,] 5.346931 3.282568 3.694383 3.546962 3.995858 0.000000 5.114298 4.717731
## [23,] 5.076538 4.147782 4.467012 5.610823 5.762504 5.114298 0.000000 6.618742
## [24,] 6.294373 4.845560 5.752742 5.691587 6.063013 4.717731 6.618742 0.000000
## [25,] 2.613537 2.772812 4.284814 4.000402 4.185914 4.287621 4.635703 5.469960
## [26,] 4.088068 3.822517 4.286173 4.345576 4.834443 4.188347 4.078382 6.592142
## [27,] 4.895409 4.540321 4.416188 2.639490 4.846939 3.872908 5.762454 4.851143
## [28,] 4.110374 4.535912 4.232879 3.349712 3.276335 3.705628 5.714308 5.776708
## [29,] 5.219810 3.987457 4.255292 4.686013 5.568506 3.895082 5.215395 5.921037
## [30,] 4.406995 4.570382 5.205089 2.497700 5.007502 3.443060 5.855564 5.897789
## [31,] 2.685014 3.743107 4.428804 4.903843 4.166425 4.827871 4.262108 6.021615
## [32,] 3.717965 4.260769 2.748097 3.802376 3.715243 3.931133 3.815128 5.720244
## [33,] 3.219305 3.391892 4.457790 4.982108 4.431186 4.167746 4.537046 4.553449
## [34,] 5.524165 3.716306 4.199472 4.777713 5.485789 3.626841 3.966786 6.112228
## [35,] 4.347424 2.690409 3.694492 3.792612 4.059229 2.852568 5.541440 4.329728
## [36,] 5.458449 2.459133 4.607276 5.895924 5.269517 3.858259 5.203249 5.510327
## [37,] 5.136181 4.349819 3.637716 3.723339 4.404170 3.828001 6.049824 6.177096
## [38,] 4.944758 4.519240 3.734638 4.520268 4.272158 4.468851 4.210607 4.463939
## [39,] 3.689759 3.675577 4.923657 3.323478 4.273185 3.473711 5.111477 4.175507
## [40,] 2.821702 4.237546 4.522528 2.994258 4.174367 4.176410 4.662171 6.106578
## [41,] 3.648883 3.677109 4.366524 3.076925 4.369294 3.170261 4.077047 5.661081
## [42,] 3.766706 5.345706 4.119770 5.516457 4.597206 5.797121 5.113646 6.737175
## [43,] 5.134120 3.611494 3.962402 4.043323 5.039240 2.902271 3.843381 6.236586
## [44,] 3.479441 2.451572 4.203499 4.217342 3.278870 3.563484 5.325404 6.078995
## [45,] 5.808451 3.826417 4.287270 4.936408 5.387931 4.148386 4.950568 4.972264
## [46,] 4.595579 4.174456 4.200937 3.015531 4.598530 3.739270 5.243497 6.252327
## [47,] 6.321338 4.618634 4.785690 6.846246 5.489780 5.498208 5.906039 6.291500
## [48,] 4.904207 2.541705 4.757631 4.168644 4.821748 3.294757 4.710314 5.137217
## [49,] 5.701450 6.015423 4.940368 4.366540 4.651037 4.456218 5.673736 7.332088
## [50,] 4.518989 4.208999 4.325337 3.082498 4.183791 3.385098 5.013982 7.050357
##          [,25]    [,26]    [,27]    [,28]    [,29]    [,30]    [,31]    [,32]
##  [1,] 4.631549 5.202632 4.682598 5.165738 4.118099 3.651070 4.580285 4.381831
##  [2,] 4.118011 4.515506 5.538121 4.070789 4.405388 5.205320 2.430798 2.985055
##  [3,] 4.412005 3.368156 4.554007 2.358940 4.237827 3.612055 3.702286 2.696706
##  [4,] 4.248518 4.107981 5.059826 4.724710 3.677159 4.863936 4.714982 4.499594
##  [5,] 6.253959 5.209718 7.538659 6.554926 4.775422 6.033568 5.422621 5.565654
##  [6,] 4.171134 5.100326 4.410441 4.415605 5.492240 2.663137 4.354403 4.672600
##  [7,] 5.514632 5.140615 6.040715 5.863863 5.421922 5.503245 5.807609 4.913479
##  [8,] 4.313499 5.641054 4.301962 4.879645 5.578206 3.828066 4.418051 3.996332
##  [9,] 4.030502 4.523646 3.484140 5.445466 4.482488 3.279742 5.117755 4.241799
## [10,] 4.252752 4.714698 3.459151 4.276062 4.400837 3.507407 4.346880 2.883818
## [11,] 4.564643 4.742495 5.946912 3.855875 5.142495 5.121938 3.982356 4.740191
## [12,] 3.473219 3.892548 4.246026 3.228801 4.936103 4.012227 3.544788 3.892212
## [13,] 3.193663 3.671495 3.644190 3.959074 4.077915 3.550804 3.973252 3.073062
## [14,] 3.633078 3.900593 4.080728 4.312323 4.212563 3.022587 3.312352 2.463818
## [15,] 4.382589 4.137657 4.313505 4.294947 4.154518 2.720318 4.666988 3.515584
## [16,] 2.694371 4.509101 5.346032 4.382139 4.563143 4.366048 2.636070 4.352322
## [17,] 2.613537 4.088068 4.895409 4.110374 5.219810 4.406995 2.685014 3.717965
## [18,] 2.772812 3.822517 4.540321 4.535912 3.987457 4.570382 3.743107 4.260769
## [19,] 4.284814 4.286173 4.416188 4.232879 4.255292 5.205089 4.428804 2.748097
## [20,] 4.000402 4.345576 2.639490 3.349712 4.686013 2.497700 4.903843 3.802376
## [21,] 4.185914 4.834443 4.846939 3.276335 5.568506 5.007502 4.166425 3.715243
## [22,] 4.287621 4.188347 3.872908 3.705628 3.895082 3.443060 4.827871 3.931133
## [23,] 4.635703 4.078382 5.762454 5.714308 5.215395 5.855564 4.262108 3.815128
## [24,] 5.469960 6.592142 4.851143 5.776708 5.921037 5.897789 6.021615 5.720244
## [25,] 0.000000 3.952859 3.824321 4.258306 4.259072 4.152216 2.899756 3.810939
## [26,] 3.952859 0.000000 5.640474 3.863876 2.819084 5.283339 3.826818 3.057205
## [27,] 3.824321 5.640474 0.000000 4.754403 5.192797 3.041363 5.433002 4.349829
## [28,] 4.258306 3.863876 4.754403 0.000000 4.924302 4.247827 3.566426 3.207026
## [29,] 4.259072 2.819084 5.192797 4.924302 0.000000 5.099497 4.783064 3.621416
## [30,] 4.152216 5.283339 3.041363 4.247827 5.099497 0.000000 4.771999 4.240311
## [31,] 2.899756 3.826818 5.433002 3.566426 4.783064 4.771999 0.000000 3.013778
## [32,] 3.810939 3.057205 4.349829 3.207026 3.621416 4.240311 3.013778 0.000000
## [33,] 3.046613 3.822683 5.217087 4.157687 4.018069 4.789672 2.315922 3.345008
## [34,] 4.031159 5.195627 4.020516 5.886966 4.644411 3.865525 4.938701 4.418460
## [35,] 2.719621 4.511307 3.020115 4.336901 3.474348 3.505209 4.306194 3.974624
## [36,] 3.920885 5.065051 5.202699 6.215407 4.222732 5.168426 5.177583 5.294550
## [37,] 3.674950 4.047692 3.629093 4.513131 3.264334 4.660352 5.362024 4.101522
## [38,] 4.380683 5.089330 4.281476 3.753800 5.745533 5.271864 3.955802 3.407740
## [39,] 3.758332 5.087533 3.604140 3.460580 5.532120 2.871628 3.721643 3.965792
## [40,] 3.397830 3.281661 4.497836 2.178573 4.480483 3.557116 2.431289 2.492724
## [41,] 3.900078 3.836574 4.094670 3.361477 4.503703 2.453582 3.356776 2.851826
## [42,] 3.467421 4.938704 5.248604 5.063336 5.059718 5.489629 3.131842 3.288219
## [43,] 4.370905 2.509173 5.112268 3.903737 2.841486 4.323388 4.085374 3.083844
## [44,] 2.554474 3.658705 4.698540 3.544994 4.392795 4.286203 3.543962 4.224141
## [45,] 5.075373 5.233810 4.735129 4.604376 4.852712 4.758533 4.667783 3.999299
## [46,] 4.010784 4.221235 3.907809 2.981930 4.324735 3.188601 3.835147 3.183655
## [47,] 6.105584 5.113740 7.079900 5.194697 5.137735 6.866355 5.020015 4.700063
## [48,] 3.590027 5.051897 4.138645 4.164648 5.290017 3.771194 4.000049 4.642076
## [49,] 6.071752 4.170634 6.150020 2.716985 5.658905 5.289028 4.974666 3.745092
## [50,] 3.800176 3.747957 4.404002 3.089079 4.618846 3.435185 4.026474 3.705611
##          [,33]    [,34]    [,35]    [,36]    [,37]    [,38]    [,39]    [,40]
##  [1,] 3.706833 4.109224 3.273141 3.920182 5.509550 5.356362 3.485179 4.574221
##  [2,] 2.429592 4.939718 4.309684 5.354524 5.540262 3.605115 4.180959 3.529443
##  [3,] 4.306032 4.650209 4.106517 5.347121 4.578424 3.945499 3.343970 2.380352
##  [4,] 4.266712 4.146950 3.017715 2.742303 4.490613 5.141545 4.349481 4.841873
##  [5,] 4.052883 5.801080 5.843966 5.326000 7.253788 7.172155 5.767599 5.821904
##  [6,] 4.754482 3.476846 3.941666 4.402750 5.465785 5.162743 2.956801 3.870889
##  [7,] 5.876442 5.230734 4.836179 4.359214 5.344294 6.802460 5.781632 5.780815
##  [8,] 3.786251 3.983218 4.158845 5.174630 5.243283 4.656345 3.850191 4.511928
##  [9,] 4.405653 3.221981 3.698973 4.044068 4.815662 5.124066 3.557738 4.508940
## [10,] 3.605688 3.280339 3.254347 4.273585 4.505922 3.598885 3.171571 4.114697
## [11,] 3.935851 5.027132 4.048936 4.181133 5.548322 4.900699 4.032724 4.493874
## [12,] 3.773970 4.321538 4.065224 5.103814 4.955167 3.156206 2.749641 2.929606
## [13,] 4.427736 4.816718 4.040023 5.905339 3.500318 4.913283 4.405848 2.599109
## [14,] 3.527618 3.256289 3.729184 4.375410 4.822698 4.456576 3.258174 3.020718
## [15,] 4.375538 3.825344 3.695822 4.500313 4.204640 5.691436 4.022222 3.830754
## [16,] 3.188252 4.194258 3.403092 3.937718 4.811924 5.331506 4.246291 3.726430
## [17,] 3.219305 5.524165 4.347424 5.458449 5.136181 4.944758 3.689759 2.821702
## [18,] 3.391892 3.716306 2.690409 2.459133 4.349819 4.519240 3.675577 4.237546
## [19,] 4.457790 4.199472 3.694492 4.607276 3.637716 3.734638 4.923657 4.522528
## [20,] 4.982108 4.777713 3.792612 5.895924 3.723339 4.520268 3.323478 2.994258
## [21,] 4.431186 5.485789 4.059229 5.269517 4.404170 4.272158 4.273185 4.174367
## [22,] 4.167746 3.626841 2.852568 3.858259 3.828001 4.468851 3.473711 4.176410
## [23,] 4.537046 3.966786 5.541440 5.203249 6.049824 4.210607 5.111477 4.662171
## [24,] 4.553449 6.112228 4.329728 5.510327 6.177096 4.463939 4.175507 6.106578
## [25,] 3.046613 4.031159 2.719621 3.920885 3.674950 4.380683 3.758332 3.397830
## [26,] 3.822683 5.195627 4.511307 5.065051 4.047692 5.089330 5.087533 3.281661
## [27,] 5.217087 4.020516 3.020115 5.202699 3.629093 4.281476 3.604140 4.497836
## [28,] 4.157687 5.886966 4.336901 6.215407 4.513131 3.753800 3.460580 2.178573
## [29,] 4.018069 4.644411 3.474348 4.222732 3.264334 5.745533 5.532120 4.480483
## [30,] 4.789672 3.865525 3.505209 5.168426 4.660352 5.271864 2.871628 3.557116
## [31,] 2.315922 4.938701 4.306194 5.177583 5.362024 3.955802 3.721643 2.431289
## [32,] 3.345008 4.418460 3.974624 5.294550 4.101522 3.407740 3.965792 2.492724
## [33,] 0.000000 4.742953 3.595092 4.238675 5.119398 4.221675 3.552862 3.481339
## [34,] 4.742953 0.000000 3.616241 3.454133 4.714974 5.118749 4.597702 5.068284
## [35,] 3.595092 3.616241 0.000000 2.915070 2.880035 4.708432 3.620855 4.256879
## [36,] 4.238675 3.454133 2.915070 0.000000 4.744853 6.128146 5.046551 5.880901
## [37,] 5.119398 4.714974 2.880035 4.744853 0.000000 5.412431 5.439541 4.636660
## [38,] 4.221675 5.118749 4.708432 6.128146 5.412431 0.000000 3.615394 3.869063
## [39,] 3.552862 4.597702 3.620855 5.046551 5.439541 3.615394 0.000000 3.170960
## [40,] 3.481339 5.068284 4.256879 5.880901 4.636660 3.869063 3.170960 0.000000
## [41,] 3.646081 3.781754 3.870324 4.841358 5.008689 4.181850 2.362026 2.354867
## [42,] 3.631802 5.051201 4.674154 5.867092 4.901117 4.660338 5.345104 4.074076
## [43,] 4.095552 3.788212 4.097338 4.608288 4.204734 4.736938 4.587736 3.428697
## [44,] 3.822507 4.706750 2.977112 3.750877 3.756296 5.105931 3.924809 3.596851
## [45,] 4.882341 4.669878 4.106776 5.057301 5.528772 4.019556 4.000272 4.480620
## [46,] 4.749018 4.441298 3.741203 5.579107 4.096922 4.265637 3.753710 2.526476
## [47,] 5.160529 6.655912 5.417057 5.648777 6.454970 5.555916 5.769067 5.468928
## [48,] 4.370342 3.680106 3.456912 4.225662 5.130974 4.013756 2.934610 3.953668
## [49,] 5.550827 6.463127 6.137140 7.458873 5.758186 4.761168 5.019336 3.427349
## [50,] 4.874077 4.199960 4.159122 5.468490 3.878687 4.803955 4.230342 2.796954
##          [,41]    [,42]    [,43]    [,44]    [,45]    [,46]    [,47]    [,48]
##  [1,] 3.293281 5.824681 4.110880 4.829832 3.294980 4.145018 4.874760 3.855430
##  [2,] 3.955602 3.478399 4.014348 4.861999 4.020703 4.096250 4.568892 4.436720
##  [3,] 2.046994 5.398324 2.511762 3.636267 3.188833 2.088114 4.276410 3.394138
##  [4,] 3.975207 6.256416 3.338085 3.273373 3.223507 4.132913 3.722178 3.147618
##  [5,] 4.895441 6.713485 4.640913 6.262832 6.349476 6.575778 6.397267 6.315503
##  [6,] 2.330250 6.079985 3.857035 3.564956 4.182313 3.396601 6.021416 2.237789
##  [7,] 4.740362 6.458893 5.185279 4.244102 5.582724 5.523394 5.292845 5.761870
##  [8,] 3.879691 3.957464 5.018863 4.993874 6.014308 5.193452 7.338947 5.066676
##  [9,] 3.045629 5.737014 4.085984 4.636656 4.874552 4.730744 6.668644 4.235449
## [10,] 2.925210 4.510657 3.803336 4.584778 4.010557 4.162853 5.546102 4.133873
## [11,] 4.022222 6.042867 3.954690 3.134217 4.324310 4.437786 4.349288 3.179336
## [12,] 2.911526 5.398976 3.314508 3.602501 4.183838 3.492872 5.795588 2.347933
## [13,] 3.583712 3.804204 4.126153 4.239072 5.488987 3.305758 6.820881 5.037623
## [14,] 1.681831 4.120908 3.387451 4.046317 3.946271 3.393719 5.280817 3.977943
## [15,] 2.651939 5.081799 3.537156 3.898233 5.334084 4.020240 6.315599 4.796777
## [16,] 3.912734 4.098791 4.113937 2.715679 5.025158 3.918167 5.635171 3.442263
## [17,] 3.648883 3.766706 5.134120 3.479441 5.808451 4.595579 6.321338 4.904207
## [18,] 3.677109 5.345706 3.611494 2.451572 3.826417 4.174456 4.618634 2.541705
## [19,] 4.366524 4.119770 3.962402 4.203499 4.287270 4.200937 4.785690 4.757631
## [20,] 3.076925 5.516457 4.043323 4.217342 4.936408 3.015531 6.846246 4.168644
## [21,] 4.369294 4.597206 5.039240 3.278870 5.387931 4.598530 5.489780 4.821748
## [22,] 3.170261 5.797121 2.902271 3.563484 4.148386 3.739270 5.498208 3.294757
## [23,] 4.077047 5.113646 3.843381 5.325404 4.950568 5.243497 5.906039 4.710314
## [24,] 5.661081 6.737175 6.236586 6.078995 4.972264 6.252327 6.291500 5.137217
## [25,] 3.900078 3.467421 4.370905 2.554474 5.075373 4.010784 6.105584 3.590027
## [26,] 3.836574 4.938704 2.509173 3.658705 5.233810 4.221235 5.113740 5.051897
## [27,] 4.094670 5.248604 5.112268 4.698540 4.735129 3.907809 7.079900 4.138645
## [28,] 3.361477 5.063336 3.903737 3.544994 4.604376 2.981930 5.194697 4.164648
## [29,] 4.503703 5.059718 2.841486 4.392795 4.852712 4.324735 5.137735 5.290017
## [30,] 2.453582 5.489629 4.323388 4.286203 4.758533 3.188601 6.866355 3.771194
## [31,] 3.356776 3.131842 4.085374 3.543962 4.667783 3.835147 5.020015 4.000049
## [32,] 2.851826 3.288219 3.083844 4.224141 3.999299 3.183655 4.700063 4.642076
## [33,] 3.646081 3.631802 4.095552 3.822507 4.882341 4.749018 5.160529 4.370342
## [34,] 3.781754 5.051201 3.788212 4.706750 4.669878 4.441298 6.655912 3.680106
## [35,] 3.870324 4.674154 4.097338 2.977112 4.106776 3.741203 5.417057 3.456912
## [36,] 4.841358 5.867092 4.608288 3.750877 5.057301 5.579107 5.648777 4.225662
## [37,] 5.008689 4.901117 4.204734 3.756296 5.528772 4.096922 6.454970 5.130974
## [38,] 4.181850 4.660338 4.736938 5.105931 4.019556 4.265637 5.555916 4.013756
## [39,] 2.362026 5.345104 4.587736 3.924809 4.000272 3.753710 5.769067 2.934610
## [40,] 2.354867 4.074076 3.428697 3.596851 4.480620 2.526476 5.468928 3.953668
## [41,] 0.000000 4.945568 3.000292 3.781043 3.750087 2.836785 5.289493 3.268118
## [42,] 4.945568 0.000000 5.278371 5.015037 6.078714 4.972085 6.696286 5.815125
## [43,] 3.000292 5.278371 0.000000 4.028541 4.079801 3.224066 4.963476 3.917154
## [44,] 3.781043 5.015037 4.028541 0.000000 5.004217 3.873086 5.313171 3.412010
## [45,] 3.750087 6.078714 4.079801 5.004217 0.000000 3.233981 3.375818 3.325085
## [46,] 2.836785 4.972085 3.224066 3.873086 3.233981 0.000000 5.079225 3.259365
## [47,] 5.289493 6.696286 4.963476 5.313171 3.375818 5.079225 0.000000 5.394600
## [48,] 3.268118 5.815125 3.917154 3.412010 3.325085 3.259365 5.394600 0.000000
## [49,] 3.957890 6.185234 3.833247 5.321508 5.683887 4.168007 6.150422 5.592643
## [50,] 3.106843 5.029601 2.946947 3.226878 5.056253 2.535639 6.366164 3.577290
##          [,49]    [,50]
##  [1,] 6.359725 5.300048
##  [2,] 5.196029 4.909696
##  [3,] 2.887323 2.734146
##  [4,] 5.899372 4.560244
##  [5,] 6.747627 6.577865
##  [6,] 5.306712 3.206060
##  [7,] 6.445875 5.403792
##  [8,] 5.592403 4.676442
##  [9,] 6.099283 4.702018
## [10,] 4.920640 4.414258
## [11,] 5.074036 4.231767
## [12,] 4.251870 3.160468
## [13,] 4.987358 3.389439
## [14,] 4.940401 3.803856
## [15,] 4.646889 3.433159
## [16,] 5.983022 3.665098
## [17,] 5.701450 4.518989
## [18,] 6.015423 4.208999
## [19,] 4.940368 4.325337
## [20,] 4.366540 3.082498
## [21,] 4.651037 4.183791
## [22,] 4.456218 3.385098
## [23,] 5.673736 5.013982
## [24,] 7.332088 7.050357
## [25,] 6.071752 3.800176
## [26,] 4.170634 3.747957
## [27,] 6.150020 4.404002
## [28,] 2.716985 3.089079
## [29,] 5.658905 4.618846
## [30,] 5.289028 3.435185
## [31,] 4.974666 4.026474
## [32,] 3.745092 3.705611
## [33,] 5.550827 4.874077
## [34,] 6.463127 4.199960
## [35,] 6.137140 4.159122
## [36,] 7.458873 5.468490
## [37,] 5.758186 3.878687
## [38,] 4.761168 4.803955
## [39,] 5.019336 4.230342
## [40,] 3.427349 2.796954
## [41,] 3.957890 3.106843
## [42,] 6.185234 5.029601
## [43,] 3.833247 2.946947
## [44,] 5.321508 3.226878
## [45,] 5.683887 5.056253
## [46,] 4.168007 2.535639
## [47,] 6.150422 6.366164
## [48,] 5.592643 3.577290
## [49,] 0.000000 3.631222
## [50,] 3.631222 0.000000
a2 <- as.matrix( dist(x) )

a2
##           1        2        3        4        5        6        7        8
## 1  0.000000 3.953859 4.073586 3.399511 4.063808 3.783132 5.594110 4.842949
## 2  3.953859 0.000000 4.032940 4.697008 4.925501 5.141830 6.546689 4.343716
## 3  4.073586 4.032940 0.000000 3.554907 5.740386 3.200805 4.720493 4.993133
## 4  3.399511 4.697008 3.554907 0.000000 5.350930 3.749545 4.269591 5.782048
## 5  4.063808 4.925501 5.740386 5.350930 0.000000 5.826182 6.890281 5.687156
## 6  3.783132 5.141830 3.200805 3.749545 5.826182 0.000000 4.912672 4.636121
## 7  5.594110 6.546689 4.720493 4.269591 6.890281 4.912672 0.000000 5.991509
## 8  4.842949 4.343716 4.993133 5.782048 5.687156 4.636121 5.991509 0.000000
## 9  3.722002 5.497144 4.333847 4.292727 5.326577 3.689481 5.141116 4.359412
## 10 3.492652 3.795811 3.603677 4.124332 5.242377 4.001255 4.851954 2.549552
## 11 4.389002 4.182396 3.590432 2.897957 5.439775 3.648557 5.095792 5.143489
## 12 4.529564 4.139635 2.984801 3.969461 5.909277 3.230230 6.291563 4.723688
## 13 5.180119 4.816101 3.952022 5.574337 6.659000 4.850950 5.993802 4.718619
## 14 3.361559 3.877193 3.022402 4.165899 4.965325 3.189541 4.165682 3.700387
## 15 4.134264 5.119965 3.487693 4.485513 5.069096 3.500367 3.872906 3.402701
## 16 4.271740 3.639535 4.291487 4.024924 5.435113 3.650816 5.484728 4.507192
## 17 5.178779 4.536050 4.471871 5.471230 6.216243 4.734441 5.583129 4.641795
## 18 3.707253 4.348067 3.806907 1.889127 5.462016 3.418222 4.625573 5.145352
## 19 5.216513 4.142453 3.823442 4.097138 6.800016 5.163805 4.271107 4.314710
## 20 4.778222 5.402959 3.271390 5.047139 6.813920 3.936245 6.048612 4.675418
## 21 5.821945 4.795019 3.982245 4.788057 7.245070 4.903330 4.327815 4.127381
## 22 3.674705 4.605479 3.062779 2.925109 5.243578 3.278514 4.892177 3.949457
## 23 5.537951 4.691071 4.499143 4.907183 5.981488 4.959048 5.808613 5.415679
## 24 4.434725 5.080205 5.939470 5.087719 6.529694 6.239746 7.696278 5.551882
## 25 4.631549 4.118011 4.412005 4.248518 6.253959 4.171134 5.514632 4.313499
## 26 5.202632 4.515506 3.368156 4.107981 5.209718 5.100326 5.140615 5.641054
## 27 4.682598 5.538121 4.554007 5.059826 7.538659 4.410441 6.040715 4.301962
## 28 5.165738 4.070789 2.358940 4.724710 6.554926 4.415605 5.863863 4.879645
## 29 4.118099 4.405388 4.237827 3.677159 4.775422 5.492240 5.421922 5.578206
## 30 3.651070 5.205320 3.612055 4.863936 6.033568 2.663137 5.503245 3.828066
## 31 4.580285 2.430798 3.702286 4.714982 5.422621 4.354403 5.807609 4.418051
## 32 4.381831 2.985055 2.696706 4.499594 5.565654 4.672600 4.913479 3.996332
## 33 3.706833 2.429592 4.306032 4.266712 4.052883 4.754482 5.876442 3.786251
## 34 4.109224 4.939718 4.650209 4.146950 5.801080 3.476846 5.230734 3.983218
## 35 3.273141 4.309684 4.106517 3.017715 5.843966 3.941666 4.836179 4.158845
## 36 3.920182 5.354524 5.347121 2.742303 5.326000 4.402750 4.359214 5.174630
## 37 5.509550 5.540262 4.578424 4.490613 7.253788 5.465785 5.344294 5.243283
## 38 5.356362 3.605115 3.945499 5.141545 7.172155 5.162743 6.802460 4.656345
## 39 3.485179 4.180959 3.343970 4.349481 5.767599 2.956801 5.781632 3.850191
## 40 4.574221 3.529443 2.380352 4.841873 5.821904 3.870889 5.780815 4.511928
## 41 3.293281 3.955602 2.046994 3.975207 4.895441 2.330250 4.740362 3.879691
## 42 5.824681 3.478399 5.398324 6.256416 6.713485 6.079985 6.458893 3.957464
## 43 4.110880 4.014348 2.511762 3.338085 4.640913 3.857035 5.185279 5.018863
## 44 4.829832 4.861999 3.636267 3.273373 6.262832 3.564956 4.244102 4.993874
## 45 3.294980 4.020703 3.188833 3.223507 6.349476 4.182313 5.582724 6.014308
## 46 4.145018 4.096250 2.088114 4.132913 6.575778 3.396601 5.523394 5.193452
## 47 4.874760 4.568892 4.276410 3.722178 6.397267 6.021416 5.292845 7.338947
## 48 3.855430 4.436720 3.394138 3.147618 6.315503 2.237789 5.761870 5.066676
## 49 6.359725 5.196029 2.887323 5.899372 6.747627 5.306712 6.445875 5.592403
## 50 5.300048 4.909696 2.734146 4.560244 6.577865 3.206060 5.403792 4.676442
##           9       10       11       12       13       14       15       16
## 1  3.722002 3.492652 4.389002 4.529564 5.180119 3.361559 4.134264 4.271740
## 2  5.497144 3.795811 4.182396 4.139635 4.816101 3.877193 5.119965 3.639535
## 3  4.333847 3.603677 3.590432 2.984801 3.952022 3.022402 3.487693 4.291487
## 4  4.292727 4.124332 2.897957 3.969461 5.574337 4.165899 4.485513 4.024924
## 5  5.326577 5.242377 5.439775 5.909277 6.659000 4.965325 5.069096 5.435113
## 6  3.689481 4.001255 3.648557 3.230230 4.850950 3.189541 3.500367 3.650816
## 7  5.141116 4.851954 5.095792 6.291563 5.993802 4.165682 3.872906 5.484728
## 8  4.359412 2.549552 5.143489 4.723688 4.718619 3.700387 3.402701 4.507192
## 9  0.000000 3.227960 5.589123 3.929998 4.091831 2.827902 3.396663 5.197697
## 10 3.227960 0.000000 4.398538 3.967713 4.480853 2.720264 3.033255 4.691253
## 11 5.589123 4.398538 0.000000 3.724264 6.143092 4.703847 4.698068 3.321797
## 12 3.929998 3.967713 3.724264 0.000000 4.244980 3.906679 4.628413 4.048271
## 13 4.091831 4.480853 6.143092 4.244980 0.000000 3.388536 3.827989 4.551560
## 14 2.827902 2.720264 4.703847 3.906679 3.388536 0.000000 2.621248 3.929284
## 15 3.396663 3.033255 4.698068 4.628413 3.827989 2.621248 0.000000 4.334493
## 16 5.197697 4.691253 3.321797 4.048271 4.551560 3.929284 4.334493 0.000000
## 17 4.469957 4.785810 5.363415 4.228368 3.172519 3.430078 4.393056 3.856885
## 18 3.704446 4.016341 3.081745 3.103854 4.861941 3.743267 4.467856 3.197008
## 19 5.009994 2.980184 4.456690 4.717897 4.741865 3.891516 4.199360 4.767726
## 20 3.542061 3.969971 5.559074 3.367058 2.581942 3.792256 3.599768 5.138514
## 21 5.634828 3.826630 3.873197 4.669844 5.010460 4.444149 4.143480 4.455497
## 22 3.660818 2.686021 3.184142 3.252913 4.784045 3.842764 3.040233 4.260266
## 23 4.143385 4.348076 5.517723 3.957927 5.171667 3.620755 5.295514 5.354042
## 24 5.204120 4.337320 5.603468 4.979759 6.627687 5.928456 6.497989 6.372772
## 25 4.030502 4.252752 4.564643 3.473219 3.193663 3.633078 4.382589 2.694371
## 26 4.523646 4.714698 4.742495 3.892548 3.671495 3.900593 4.137657 4.509101
## 27 3.484140 3.459151 5.946912 4.246026 3.644190 4.080728 4.313505 5.346032
## 28 5.445466 4.276062 3.855875 3.228801 3.959074 4.312323 4.294947 4.382139
## 29 4.482488 4.400837 5.142495 4.936103 4.077915 4.212563 4.154518 4.563143
## 30 3.279742 3.507407 5.121938 4.012227 3.550804 3.022587 2.720318 4.366048
## 31 5.117755 4.346880 3.982356 3.544788 3.973252 3.312352 4.666988 2.636070
## 32 4.241799 2.883818 4.740191 3.892212 3.073062 2.463818 3.515584 4.352322
## 33 4.405653 3.605688 3.935851 3.773970 4.427736 3.527618 4.375538 3.188252
## 34 3.221981 3.280339 5.027132 4.321538 4.816718 3.256289 3.825344 4.194258
## 35 3.698973 3.254347 4.048936 4.065224 4.040023 3.729184 3.695822 3.403092
## 36 4.044068 4.273585 4.181133 5.103814 5.905339 4.375410 4.500313 3.937718
## 37 4.815662 4.505922 5.548322 4.955167 3.500318 4.822698 4.204640 4.811924
## 38 5.124066 3.598885 4.900699 3.156206 4.913283 4.456576 5.691436 5.331506
## 39 3.557738 3.171571 4.032724 2.749641 4.405848 3.258174 4.022222 4.246291
## 40 4.508940 4.114697 4.493874 2.929606 2.599109 3.020718 3.830754 3.726430
## 41 3.045629 2.925210 4.022222 2.911526 3.583712 1.681831 2.651939 3.912734
## 42 5.737014 4.510657 6.042867 5.398976 3.804204 4.120908 5.081799 4.098791
## 43 4.085984 3.803336 3.954690 3.314508 4.126153 3.387451 3.537156 4.113937
## 44 4.636656 4.584778 3.134217 3.602501 4.239072 4.046317 3.898233 2.715679
## 45 4.874552 4.010557 4.324310 4.183838 5.488987 3.946271 5.334084 5.025158
## 46 4.730744 4.162853 4.437786 3.492872 3.305758 3.393719 4.020240 3.918167
## 47 6.668644 5.546102 4.349288 5.795588 6.820881 5.280817 6.315599 5.635171
## 48 4.235449 4.133873 3.179336 2.347933 5.037623 3.977943 4.796777 3.442263
## 49 6.099283 4.920640 5.074036 4.251870 4.987358 4.940401 4.646889 5.983022
## 50 4.702018 4.414258 4.231767 3.160468 3.389439 3.803856 3.433159 3.665098
##          17       18       19       20       21       22       23       24
## 1  5.178779 3.707253 5.216513 4.778222 5.821945 3.674705 5.537951 4.434725
## 2  4.536050 4.348067 4.142453 5.402959 4.795019 4.605479 4.691071 5.080205
## 3  4.471871 3.806907 3.823442 3.271390 3.982245 3.062779 4.499143 5.939470
## 4  5.471230 1.889127 4.097138 5.047139 4.788057 2.925109 4.907183 5.087719
## 5  6.216243 5.462016 6.800016 6.813920 7.245070 5.243578 5.981488 6.529694
## 6  4.734441 3.418222 5.163805 3.936245 4.903330 3.278514 4.959048 6.239746
## 7  5.583129 4.625573 4.271107 6.048612 4.327815 4.892177 5.808613 7.696278
## 8  4.641795 5.145352 4.314710 4.675418 4.127381 3.949457 5.415679 5.551882
## 9  4.469957 3.704446 5.009994 3.542061 5.634828 3.660818 4.143385 5.204120
## 10 4.785810 4.016341 2.980184 3.969971 3.826630 2.686021 4.348076 4.337320
## 11 5.363415 3.081745 4.456690 5.559074 3.873197 3.184142 5.517723 5.603468
## 12 4.228368 3.103854 4.717897 3.367058 4.669844 3.252913 3.957927 4.979759
## 13 3.172519 4.861941 4.741865 2.581942 5.010460 4.784045 5.171667 6.627687
## 14 3.430078 3.743267 3.891516 3.792256 4.444149 3.842764 3.620755 5.928456
## 15 4.393056 4.467856 4.199360 3.599768 4.143480 3.040233 5.295514 6.497989
## 16 3.856885 3.197008 4.767726 5.138514 4.455497 4.260266 5.354042 6.372772
## 17 0.000000 4.231655 5.220992 4.262557 4.388166 5.346931 5.076538 6.294373
## 18 4.231655 0.000000 4.140376 4.653953 4.450217 3.282568 4.147782 4.845560
## 19 5.220992 4.140376 0.000000 4.923537 2.869729 3.694383 4.467012 5.752742
## 20 4.262557 4.653953 4.923537 0.000000 4.846812 3.546962 5.610823 5.691587
## 21 4.388166 4.450217 2.869729 4.846812 0.000000 3.995858 5.762504 6.063013
## 22 5.346931 3.282568 3.694383 3.546962 3.995858 0.000000 5.114298 4.717731
## 23 5.076538 4.147782 4.467012 5.610823 5.762504 5.114298 0.000000 6.618742
## 24 6.294373 4.845560 5.752742 5.691587 6.063013 4.717731 6.618742 0.000000
## 25 2.613537 2.772812 4.284814 4.000402 4.185914 4.287621 4.635703 5.469960
## 26 4.088068 3.822517 4.286173 4.345576 4.834443 4.188347 4.078382 6.592142
## 27 4.895409 4.540321 4.416188 2.639490 4.846939 3.872908 5.762454 4.851143
## 28 4.110374 4.535912 4.232879 3.349712 3.276335 3.705628 5.714308 5.776708
## 29 5.219810 3.987457 4.255292 4.686013 5.568506 3.895082 5.215395 5.921037
## 30 4.406995 4.570382 5.205089 2.497700 5.007502 3.443060 5.855564 5.897789
## 31 2.685014 3.743107 4.428804 4.903843 4.166425 4.827871 4.262108 6.021615
## 32 3.717965 4.260769 2.748097 3.802376 3.715243 3.931133 3.815128 5.720244
## 33 3.219305 3.391892 4.457790 4.982108 4.431186 4.167746 4.537046 4.553449
## 34 5.524165 3.716306 4.199472 4.777713 5.485789 3.626841 3.966786 6.112228
## 35 4.347424 2.690409 3.694492 3.792612 4.059229 2.852568 5.541440 4.329728
## 36 5.458449 2.459133 4.607276 5.895924 5.269517 3.858259 5.203249 5.510327
## 37 5.136181 4.349819 3.637716 3.723339 4.404170 3.828001 6.049824 6.177096
## 38 4.944758 4.519240 3.734638 4.520268 4.272158 4.468851 4.210607 4.463939
## 39 3.689759 3.675577 4.923657 3.323478 4.273185 3.473711 5.111477 4.175507
## 40 2.821702 4.237546 4.522528 2.994258 4.174367 4.176410 4.662171 6.106578
## 41 3.648883 3.677109 4.366524 3.076925 4.369294 3.170261 4.077047 5.661081
## 42 3.766706 5.345706 4.119770 5.516457 4.597206 5.797121 5.113646 6.737175
## 43 5.134120 3.611494 3.962402 4.043323 5.039240 2.902271 3.843381 6.236586
## 44 3.479441 2.451572 4.203499 4.217342 3.278870 3.563484 5.325404 6.078995
## 45 5.808451 3.826417 4.287270 4.936408 5.387931 4.148386 4.950568 4.972264
## 46 4.595579 4.174456 4.200937 3.015531 4.598530 3.739270 5.243497 6.252327
## 47 6.321338 4.618634 4.785690 6.846246 5.489780 5.498208 5.906039 6.291500
## 48 4.904207 2.541705 4.757631 4.168644 4.821748 3.294757 4.710314 5.137217
## 49 5.701450 6.015423 4.940368 4.366540 4.651037 4.456218 5.673736 7.332088
## 50 4.518989 4.208999 4.325337 3.082498 4.183791 3.385098 5.013982 7.050357
##          25       26       27       28       29       30       31       32
## 1  4.631549 5.202632 4.682598 5.165738 4.118099 3.651070 4.580285 4.381831
## 2  4.118011 4.515506 5.538121 4.070789 4.405388 5.205320 2.430798 2.985055
## 3  4.412005 3.368156 4.554007 2.358940 4.237827 3.612055 3.702286 2.696706
## 4  4.248518 4.107981 5.059826 4.724710 3.677159 4.863936 4.714982 4.499594
## 5  6.253959 5.209718 7.538659 6.554926 4.775422 6.033568 5.422621 5.565654
## 6  4.171134 5.100326 4.410441 4.415605 5.492240 2.663137 4.354403 4.672600
## 7  5.514632 5.140615 6.040715 5.863863 5.421922 5.503245 5.807609 4.913479
## 8  4.313499 5.641054 4.301962 4.879645 5.578206 3.828066 4.418051 3.996332
## 9  4.030502 4.523646 3.484140 5.445466 4.482488 3.279742 5.117755 4.241799
## 10 4.252752 4.714698 3.459151 4.276062 4.400837 3.507407 4.346880 2.883818
## 11 4.564643 4.742495 5.946912 3.855875 5.142495 5.121938 3.982356 4.740191
## 12 3.473219 3.892548 4.246026 3.228801 4.936103 4.012227 3.544788 3.892212
## 13 3.193663 3.671495 3.644190 3.959074 4.077915 3.550804 3.973252 3.073062
## 14 3.633078 3.900593 4.080728 4.312323 4.212563 3.022587 3.312352 2.463818
## 15 4.382589 4.137657 4.313505 4.294947 4.154518 2.720318 4.666988 3.515584
## 16 2.694371 4.509101 5.346032 4.382139 4.563143 4.366048 2.636070 4.352322
## 17 2.613537 4.088068 4.895409 4.110374 5.219810 4.406995 2.685014 3.717965
## 18 2.772812 3.822517 4.540321 4.535912 3.987457 4.570382 3.743107 4.260769
## 19 4.284814 4.286173 4.416188 4.232879 4.255292 5.205089 4.428804 2.748097
## 20 4.000402 4.345576 2.639490 3.349712 4.686013 2.497700 4.903843 3.802376
## 21 4.185914 4.834443 4.846939 3.276335 5.568506 5.007502 4.166425 3.715243
## 22 4.287621 4.188347 3.872908 3.705628 3.895082 3.443060 4.827871 3.931133
## 23 4.635703 4.078382 5.762454 5.714308 5.215395 5.855564 4.262108 3.815128
## 24 5.469960 6.592142 4.851143 5.776708 5.921037 5.897789 6.021615 5.720244
## 25 0.000000 3.952859 3.824321 4.258306 4.259072 4.152216 2.899756 3.810939
## 26 3.952859 0.000000 5.640474 3.863876 2.819084 5.283339 3.826818 3.057205
## 27 3.824321 5.640474 0.000000 4.754403 5.192797 3.041363 5.433002 4.349829
## 28 4.258306 3.863876 4.754403 0.000000 4.924302 4.247827 3.566426 3.207026
## 29 4.259072 2.819084 5.192797 4.924302 0.000000 5.099497 4.783064 3.621416
## 30 4.152216 5.283339 3.041363 4.247827 5.099497 0.000000 4.771999 4.240311
## 31 2.899756 3.826818 5.433002 3.566426 4.783064 4.771999 0.000000 3.013778
## 32 3.810939 3.057205 4.349829 3.207026 3.621416 4.240311 3.013778 0.000000
## 33 3.046613 3.822683 5.217087 4.157687 4.018069 4.789672 2.315922 3.345008
## 34 4.031159 5.195627 4.020516 5.886966 4.644411 3.865525 4.938701 4.418460
## 35 2.719621 4.511307 3.020115 4.336901 3.474348 3.505209 4.306194 3.974624
## 36 3.920885 5.065051 5.202699 6.215407 4.222732 5.168426 5.177583 5.294550
## 37 3.674950 4.047692 3.629093 4.513131 3.264334 4.660352 5.362024 4.101522
## 38 4.380683 5.089330 4.281476 3.753800 5.745533 5.271864 3.955802 3.407740
## 39 3.758332 5.087533 3.604140 3.460580 5.532120 2.871628 3.721643 3.965792
## 40 3.397830 3.281661 4.497836 2.178573 4.480483 3.557116 2.431289 2.492724
## 41 3.900078 3.836574 4.094670 3.361477 4.503703 2.453582 3.356776 2.851826
## 42 3.467421 4.938704 5.248604 5.063336 5.059718 5.489629 3.131842 3.288219
## 43 4.370905 2.509173 5.112268 3.903737 2.841486 4.323388 4.085374 3.083844
## 44 2.554474 3.658705 4.698540 3.544994 4.392795 4.286203 3.543962 4.224141
## 45 5.075373 5.233810 4.735129 4.604376 4.852712 4.758533 4.667783 3.999299
## 46 4.010784 4.221235 3.907809 2.981930 4.324735 3.188601 3.835147 3.183655
## 47 6.105584 5.113740 7.079900 5.194697 5.137735 6.866355 5.020015 4.700063
## 48 3.590027 5.051897 4.138645 4.164648 5.290017 3.771194 4.000049 4.642076
## 49 6.071752 4.170634 6.150020 2.716985 5.658905 5.289028 4.974666 3.745092
## 50 3.800176 3.747957 4.404002 3.089079 4.618846 3.435185 4.026474 3.705611
##          33       34       35       36       37       38       39       40
## 1  3.706833 4.109224 3.273141 3.920182 5.509550 5.356362 3.485179 4.574221
## 2  2.429592 4.939718 4.309684 5.354524 5.540262 3.605115 4.180959 3.529443
## 3  4.306032 4.650209 4.106517 5.347121 4.578424 3.945499 3.343970 2.380352
## 4  4.266712 4.146950 3.017715 2.742303 4.490613 5.141545 4.349481 4.841873
## 5  4.052883 5.801080 5.843966 5.326000 7.253788 7.172155 5.767599 5.821904
## 6  4.754482 3.476846 3.941666 4.402750 5.465785 5.162743 2.956801 3.870889
## 7  5.876442 5.230734 4.836179 4.359214 5.344294 6.802460 5.781632 5.780815
## 8  3.786251 3.983218 4.158845 5.174630 5.243283 4.656345 3.850191 4.511928
## 9  4.405653 3.221981 3.698973 4.044068 4.815662 5.124066 3.557738 4.508940
## 10 3.605688 3.280339 3.254347 4.273585 4.505922 3.598885 3.171571 4.114697
## 11 3.935851 5.027132 4.048936 4.181133 5.548322 4.900699 4.032724 4.493874
## 12 3.773970 4.321538 4.065224 5.103814 4.955167 3.156206 2.749641 2.929606
## 13 4.427736 4.816718 4.040023 5.905339 3.500318 4.913283 4.405848 2.599109
## 14 3.527618 3.256289 3.729184 4.375410 4.822698 4.456576 3.258174 3.020718
## 15 4.375538 3.825344 3.695822 4.500313 4.204640 5.691436 4.022222 3.830754
## 16 3.188252 4.194258 3.403092 3.937718 4.811924 5.331506 4.246291 3.726430
## 17 3.219305 5.524165 4.347424 5.458449 5.136181 4.944758 3.689759 2.821702
## 18 3.391892 3.716306 2.690409 2.459133 4.349819 4.519240 3.675577 4.237546
## 19 4.457790 4.199472 3.694492 4.607276 3.637716 3.734638 4.923657 4.522528
## 20 4.982108 4.777713 3.792612 5.895924 3.723339 4.520268 3.323478 2.994258
## 21 4.431186 5.485789 4.059229 5.269517 4.404170 4.272158 4.273185 4.174367
## 22 4.167746 3.626841 2.852568 3.858259 3.828001 4.468851 3.473711 4.176410
## 23 4.537046 3.966786 5.541440 5.203249 6.049824 4.210607 5.111477 4.662171
## 24 4.553449 6.112228 4.329728 5.510327 6.177096 4.463939 4.175507 6.106578
## 25 3.046613 4.031159 2.719621 3.920885 3.674950 4.380683 3.758332 3.397830
## 26 3.822683 5.195627 4.511307 5.065051 4.047692 5.089330 5.087533 3.281661
## 27 5.217087 4.020516 3.020115 5.202699 3.629093 4.281476 3.604140 4.497836
## 28 4.157687 5.886966 4.336901 6.215407 4.513131 3.753800 3.460580 2.178573
## 29 4.018069 4.644411 3.474348 4.222732 3.264334 5.745533 5.532120 4.480483
## 30 4.789672 3.865525 3.505209 5.168426 4.660352 5.271864 2.871628 3.557116
## 31 2.315922 4.938701 4.306194 5.177583 5.362024 3.955802 3.721643 2.431289
## 32 3.345008 4.418460 3.974624 5.294550 4.101522 3.407740 3.965792 2.492724
## 33 0.000000 4.742953 3.595092 4.238675 5.119398 4.221675 3.552862 3.481339
## 34 4.742953 0.000000 3.616241 3.454133 4.714974 5.118749 4.597702 5.068284
## 35 3.595092 3.616241 0.000000 2.915070 2.880035 4.708432 3.620855 4.256879
## 36 4.238675 3.454133 2.915070 0.000000 4.744853 6.128146 5.046551 5.880901
## 37 5.119398 4.714974 2.880035 4.744853 0.000000 5.412431 5.439541 4.636660
## 38 4.221675 5.118749 4.708432 6.128146 5.412431 0.000000 3.615394 3.869063
## 39 3.552862 4.597702 3.620855 5.046551 5.439541 3.615394 0.000000 3.170960
## 40 3.481339 5.068284 4.256879 5.880901 4.636660 3.869063 3.170960 0.000000
## 41 3.646081 3.781754 3.870324 4.841358 5.008689 4.181850 2.362026 2.354867
## 42 3.631802 5.051201 4.674154 5.867092 4.901117 4.660338 5.345104 4.074076
## 43 4.095552 3.788212 4.097338 4.608288 4.204734 4.736938 4.587736 3.428697
## 44 3.822507 4.706750 2.977112 3.750877 3.756296 5.105931 3.924809 3.596851
## 45 4.882341 4.669878 4.106776 5.057301 5.528772 4.019556 4.000272 4.480620
## 46 4.749018 4.441298 3.741203 5.579107 4.096922 4.265637 3.753710 2.526476
## 47 5.160529 6.655912 5.417057 5.648777 6.454970 5.555916 5.769067 5.468928
## 48 4.370342 3.680106 3.456912 4.225662 5.130974 4.013756 2.934610 3.953668
## 49 5.550827 6.463127 6.137140 7.458873 5.758186 4.761168 5.019336 3.427349
## 50 4.874077 4.199960 4.159122 5.468490 3.878687 4.803955 4.230342 2.796954
##          41       42       43       44       45       46       47       48
## 1  3.293281 5.824681 4.110880 4.829832 3.294980 4.145018 4.874760 3.855430
## 2  3.955602 3.478399 4.014348 4.861999 4.020703 4.096250 4.568892 4.436720
## 3  2.046994 5.398324 2.511762 3.636267 3.188833 2.088114 4.276410 3.394138
## 4  3.975207 6.256416 3.338085 3.273373 3.223507 4.132913 3.722178 3.147618
## 5  4.895441 6.713485 4.640913 6.262832 6.349476 6.575778 6.397267 6.315503
## 6  2.330250 6.079985 3.857035 3.564956 4.182313 3.396601 6.021416 2.237789
## 7  4.740362 6.458893 5.185279 4.244102 5.582724 5.523394 5.292845 5.761870
## 8  3.879691 3.957464 5.018863 4.993874 6.014308 5.193452 7.338947 5.066676
## 9  3.045629 5.737014 4.085984 4.636656 4.874552 4.730744 6.668644 4.235449
## 10 2.925210 4.510657 3.803336 4.584778 4.010557 4.162853 5.546102 4.133873
## 11 4.022222 6.042867 3.954690 3.134217 4.324310 4.437786 4.349288 3.179336
## 12 2.911526 5.398976 3.314508 3.602501 4.183838 3.492872 5.795588 2.347933
## 13 3.583712 3.804204 4.126153 4.239072 5.488987 3.305758 6.820881 5.037623
## 14 1.681831 4.120908 3.387451 4.046317 3.946271 3.393719 5.280817 3.977943
## 15 2.651939 5.081799 3.537156 3.898233 5.334084 4.020240 6.315599 4.796777
## 16 3.912734 4.098791 4.113937 2.715679 5.025158 3.918167 5.635171 3.442263
## 17 3.648883 3.766706 5.134120 3.479441 5.808451 4.595579 6.321338 4.904207
## 18 3.677109 5.345706 3.611494 2.451572 3.826417 4.174456 4.618634 2.541705
## 19 4.366524 4.119770 3.962402 4.203499 4.287270 4.200937 4.785690 4.757631
## 20 3.076925 5.516457 4.043323 4.217342 4.936408 3.015531 6.846246 4.168644
## 21 4.369294 4.597206 5.039240 3.278870 5.387931 4.598530 5.489780 4.821748
## 22 3.170261 5.797121 2.902271 3.563484 4.148386 3.739270 5.498208 3.294757
## 23 4.077047 5.113646 3.843381 5.325404 4.950568 5.243497 5.906039 4.710314
## 24 5.661081 6.737175 6.236586 6.078995 4.972264 6.252327 6.291500 5.137217
## 25 3.900078 3.467421 4.370905 2.554474 5.075373 4.010784 6.105584 3.590027
## 26 3.836574 4.938704 2.509173 3.658705 5.233810 4.221235 5.113740 5.051897
## 27 4.094670 5.248604 5.112268 4.698540 4.735129 3.907809 7.079900 4.138645
## 28 3.361477 5.063336 3.903737 3.544994 4.604376 2.981930 5.194697 4.164648
## 29 4.503703 5.059718 2.841486 4.392795 4.852712 4.324735 5.137735 5.290017
## 30 2.453582 5.489629 4.323388 4.286203 4.758533 3.188601 6.866355 3.771194
## 31 3.356776 3.131842 4.085374 3.543962 4.667783 3.835147 5.020015 4.000049
## 32 2.851826 3.288219 3.083844 4.224141 3.999299 3.183655 4.700063 4.642076
## 33 3.646081 3.631802 4.095552 3.822507 4.882341 4.749018 5.160529 4.370342
## 34 3.781754 5.051201 3.788212 4.706750 4.669878 4.441298 6.655912 3.680106
## 35 3.870324 4.674154 4.097338 2.977112 4.106776 3.741203 5.417057 3.456912
## 36 4.841358 5.867092 4.608288 3.750877 5.057301 5.579107 5.648777 4.225662
## 37 5.008689 4.901117 4.204734 3.756296 5.528772 4.096922 6.454970 5.130974
## 38 4.181850 4.660338 4.736938 5.105931 4.019556 4.265637 5.555916 4.013756
## 39 2.362026 5.345104 4.587736 3.924809 4.000272 3.753710 5.769067 2.934610
## 40 2.354867 4.074076 3.428697 3.596851 4.480620 2.526476 5.468928 3.953668
## 41 0.000000 4.945568 3.000292 3.781043 3.750087 2.836785 5.289493 3.268118
## 42 4.945568 0.000000 5.278371 5.015037 6.078714 4.972085 6.696286 5.815125
## 43 3.000292 5.278371 0.000000 4.028541 4.079801 3.224066 4.963476 3.917154
## 44 3.781043 5.015037 4.028541 0.000000 5.004217 3.873086 5.313171 3.412010
## 45 3.750087 6.078714 4.079801 5.004217 0.000000 3.233981 3.375818 3.325085
## 46 2.836785 4.972085 3.224066 3.873086 3.233981 0.000000 5.079225 3.259365
## 47 5.289493 6.696286 4.963476 5.313171 3.375818 5.079225 0.000000 5.394600
## 48 3.268118 5.815125 3.917154 3.412010 3.325085 3.259365 5.394600 0.000000
## 49 3.957890 6.185234 3.833247 5.321508 5.683887 4.168007 6.150422 5.592643
## 50 3.106843 5.029601 2.946947 3.226878 5.056253 2.535639 6.366164 3.577290
##          49       50
## 1  6.359725 5.300048
## 2  5.196029 4.909696
## 3  2.887323 2.734146
## 4  5.899372 4.560244
## 5  6.747627 6.577865
## 6  5.306712 3.206060
## 7  6.445875 5.403792
## 8  5.592403 4.676442
## 9  6.099283 4.702018
## 10 4.920640 4.414258
## 11 5.074036 4.231767
## 12 4.251870 3.160468
## 13 4.987358 3.389439
## 14 4.940401 3.803856
## 15 4.646889 3.433159
## 16 5.983022 3.665098
## 17 5.701450 4.518989
## 18 6.015423 4.208999
## 19 4.940368 4.325337
## 20 4.366540 3.082498
## 21 4.651037 4.183791
## 22 4.456218 3.385098
## 23 5.673736 5.013982
## 24 7.332088 7.050357
## 25 6.071752 3.800176
## 26 4.170634 3.747957
## 27 6.150020 4.404002
## 28 2.716985 3.089079
## 29 5.658905 4.618846
## 30 5.289028 3.435185
## 31 4.974666 4.026474
## 32 3.745092 3.705611
## 33 5.550827 4.874077
## 34 6.463127 4.199960
## 35 6.137140 4.159122
## 36 7.458873 5.468490
## 37 5.758186 3.878687
## 38 4.761168 4.803955
## 39 5.019336 4.230342
## 40 3.427349 2.796954
## 41 3.957890 3.106843
## 42 6.185234 5.029601
## 43 3.833247 2.946947
## 44 5.321508 3.226878
## 45 5.683887 5.056253
## 46 4.168007 2.535639
## 47 6.150422 6.366164
## 48 5.592643 3.577290
## 49 0.000000 3.631222
## 50 3.631222 0.000000

计算向量和矩阵的距离

xnew <- as.matrix( iris[1:10, 1:4] )
x <- as.matrix( iris[-c(1:10), 1:4] )

a <- dista(xnew, x)
dim(a)
## [1]  10 140

Mahalanobis distance.

x <- matrix( rnorm(100 * 50), ncol = 50 )
m <- colmeans(x)
s <- cov(x)
a1 <- mahala(x, m, s) 

距离矩阵中所有成对距离的总和。

x <- matrix( rnorm(10 * 10), ncol = 10 )
res<-total.dist(x) 
res
## [1] 229.819

可选的距离包括: “euclidean”, “manhattan”, “canberra1”, “canberra2”, “minimum”, “maximum”, “minkowski”,“bhattacharyya”, “hellinger”, “total_variation” or “kullback_leibler/jensen_shannon”.

多元正态分布

Density of the multivariate normal and t distributions.

x <- matrnorm(100, 20)
mu <- colmeans(x)
s <- cova(x)
a1 <- dmvnorm(x, mu, s) 

a2 <- dmvt(x, mu, s, 1)

两个矩阵或者矩阵与向量之间的运算

XopY.sum(x, y = NULL, oper = "*")
eachrow(x,y,oper = "*",method = NULL)
eachcol.apply(x,y,indices = NULL,oper = "*",apply = "sum")
x <- matrix( rnorm(5 * 5), ncol = 5 )
y <- matrix( rnorm(5 * 5), ncol = 5 )
res<-XopY.sum(x, y, oper = "*")

y <- x[,1]
res<-eachrow(x,y)

eachcol.apply(x,y)
## [1]  1.5531571 -0.9673894 -1.3791041  0.4865069 -0.2891323

遍历

iterator(x,method="ceil",type="vector",by=1)
## S3 method for class 'iterator'
print(x,...)
## S3 replacement method for class 'iterator'
Elem(x) <- value
Elem(x)
Elem(x) <- value
## S3 method for class 'iterator'
Elem(x)
## S3 method for class 'iterator'
x == y
## S3 method for class 'iterator'
x != y
y<-rnorm(100)
x<-iterator(y,method="ceil",type="vector",by=1)

s<-0
while(x != x$end()){
    s <- s + Elem(x)
    x$nextElem()
}

向量的多样本测试。

ftest(x, ina, logged = FALSE)
anova1(x, ina, logged = FALSE)
kruskaltest(x, ina, logged = FALSE) 
var2test(x, y, alternative = "unequal", logged = FALSE)
mcnemar(x, y, logged = FALSE)
ttest2(x, y, paired = FALSE, logged = FALSE)
cqtest(x, treat, block, logged = FALSE) 
block.anova(x, treat, block, logged = FALSE) 
twoway.anova(y, x1, x2, interact = FALSE, logged = FALSE)
x <- rnorm(200)
ina <- rbinom(200, 3, 0.5) + 1
res<-anova1(x, ina)
res
##    F stat   p-value 
## 1.0397507 0.3760813

group 函数

group(x,ina,method="sum",ina.min=NULL,ina.max = NULL,
    ina.length.unique=NULL,mad.method="median")
group.sum(x, ina,ina.max = NULL,ina.min = NULL)
group.mean(x, ina,ina.max = max(ina))

method 的参数包括: A character vector with values “sum”, “var”, “all”, “any”, “mad”, “mean”, “med”, “min”, “max”, “min.max”.

x <- rgamma(100,1, 4)
ina <- sample(1:5, 100, TRUE)
res<-group(x, ina,method="var")

Hash

Hash(keys=NULL,values=NULL)
Hash.key.multi(x,...,sep = " ")
## S3 replacement method for class 'Hash'
x[...,sep = " "] <- value
## S3 method for class 'Hash'
x[...,sep = " "]
## S3 method for class 'Hash'
print(x,...)
## S3 method for class 'Hash'
length(x)

hash.find(x,key)

hash.list

hash2list
x <- Hash(rnorm(10),sample(1:10))
x
## <Hash> contains  10  keys-values pairs
## -1.06505687948898    :  6 
## 0.348213334927755    :  7 
## -0.384270987780695   :  2 
## 1.46919704082109     :  1 
## -0.471924607650741   :  9 
## 0.550472443820246    :  5 
## -2.09722078060948    :  4 
## -0.736917857360274   :  3 
## -0.0641982265171771  :  8 
## 0.55201427800783     :  10

高维(n<<p)主成分分析中的特征值。

x是N*P的矩阵

x <- matrnorm( 40, 100)
a <- hd.eigen(x, FALSE, FALSE)
b <- prcomp(x, center = FALSE, scale = FALSE)
a
## $values
##  [1] 6.9050477 5.8916145 5.7008437 5.5059561 5.0192178 4.6483651 4.3836932
##  [8] 4.1959167 4.0307193 3.8178652 3.7522274 3.4195735 3.2254460 3.0311781
## [15] 2.9537752 2.9036694 2.6929836 2.4874559 2.3980596 2.3899429 2.2162376
## [22] 2.1307210 1.9575430 1.8481021 1.8143223 1.6859017 1.6193950 1.4987825
## [29] 1.2799364 1.2383723 1.1567317 1.0679810 1.0034965 0.8785089 0.7458857
## [36] 0.7057041 0.6564649 0.6003408 0.5715027 0.3993404
## 
## $vectors
## NULL
b$sdev^2
##  [1] 6.9050477 5.8916145 5.7008437 5.5059561 5.0192178 4.6483651 4.3836932
##  [8] 4.1959167 4.0307193 3.8178652 3.7522274 3.4195735 3.2254460 3.0311781
## [15] 2.9537752 2.9036694 2.6929836 2.4874559 2.3980596 2.3899429 2.2162376
## [22] 2.1307210 1.9575430 1.8481021 1.8143223 1.6859017 1.6193950 1.4987825
## [29] 1.2799364 1.2383723 1.1567317 1.0679810 1.0034965 0.8785089 0.7458857
## [36] 0.7057041 0.6564649 0.6003408 0.5715027 0.3993404

检查方阵是否对称。

x <-matrix( rnorm( 10 * 10), ncol = 10)
s1 <- cor(x)
s1
##              [,1]        [,2]        [,3]        [,4]        [,5]        [,6]
##  [1,]  1.00000000 -0.51712682  0.36846913  0.01163246 -0.12243492 -0.63619863
##  [2,] -0.51712682  1.00000000 -0.21099190  0.19210561 -0.05031404  0.08735329
##  [3,]  0.36846913 -0.21099190  1.00000000  0.15311352 -0.23003725 -0.25539386
##  [4,]  0.01163246  0.19210561  0.15311352  1.00000000  0.09853164 -0.28584597
##  [5,] -0.12243492 -0.05031404 -0.23003725  0.09853164  1.00000000  0.28489232
##  [6,] -0.63619863  0.08735329 -0.25539386 -0.28584597  0.28489232  1.00000000
##  [7,]  0.22430868  0.38062573 -0.18778921 -0.04732462 -0.32054655 -0.08692039
##  [8,] -0.05187954 -0.51933595 -0.12991533 -0.05537806 -0.14946666  0.31978268
##  [9,]  0.37201925 -0.62625160 -0.06367245 -0.06929350  0.40461653 -0.12673440
## [10,] -0.12803885 -0.07371846 -0.07951216  0.54189985  0.65075301 -0.18568629
##              [,7]        [,8]        [,9]       [,10]
##  [1,]  0.22430868 -0.05187954  0.37201925 -0.12803885
##  [2,]  0.38062573 -0.51933595 -0.62625160 -0.07371846
##  [3,] -0.18778921 -0.12991533 -0.06367245 -0.07951216
##  [4,] -0.04732462 -0.05537806 -0.06929350  0.54189985
##  [5,] -0.32054655 -0.14946666  0.40461653  0.65075301
##  [6,] -0.08692039  0.31978268 -0.12673440 -0.18568629
##  [7,]  1.00000000 -0.45889980  0.05583624 -0.43734083
##  [8,] -0.45889980  1.00000000 -0.10132668 -0.12177714
##  [9,]  0.05583624 -0.10132668  1.00000000  0.40266095
## [10,] -0.43734083 -0.12177714  0.40266095  1.00000000
is.symmetric(s1)
## [1] TRUE

查找元素

x <- rnorm(500)
key <- x[50]
b <- is_element(x, key) 

大规模数据的线性模型。

n <- 200  ;  p <- 5
X <- matrnorm(n, p)
y <- rnorm(n)
a1 <- .lm.fit(X, y) 
a2 <- lmfit(X, y) 

计算平均值中位数

其他函数还有很多,例如Median,

x <- Rnorm(1000)
Mad(x)
## [1] 0.9824782
mad(x)
## [1] 0.9824782
x <- matrix( rnorm(100 * 50), ncol = 50 )
m <- colmeans(x)
s <- cov(x)
a1 <- mahala(x, m, s) 

两个矩阵之间的相等列数。

x <- as.matrix(iris[, 1:3])
y <- iris
y[, 5] <- as.numeric(y[, 5])
y <- as.matrix(y)
res<-mat.mat(x, y)

res
## [1] 1 1 1

矩阵乘法、Cross和Tcross乘积。

mat.mult(x, y)
Crossprod(x,y)
Tcrossprod(x,y)
x <- matrnorm(100, 100)
y <- matrnorm(100, 100)
a <- x 
b <- mat.mult(x, y)
b <- Crossprod(x, y)
b <- Tcrossprod(x, y)

匹配

返回与第二个参数匹配的第一个参数的位置。

y <- c(1,2,3)
a <- Match(x = 1,key = y)
a
## [1] 1

优势比检验/odds ratio tests

x <- matrix( rbinom(100 * 100, 1, 0.5), ncol = 100 )
ina <- rep(1:2, each = 50)
a <- odds(x, ina = ina)

排序

按列和行顺序排序索引。

colOrder(x,stable=FALSE,descending=FALSE, parallel = FALSE)
rowOrder(x,stable=FALSE,descending=FALSE, parallel = FALSE)
Order(x,stable=FALSE,descending=FALSE,partial = NULL)
x <- matrix( runif(10 * 10), ncol = 10 )
res<-colOrder(x)

res
##       [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
##  [1,]    9    6    1    9   10    4    8    7    3     2
##  [2,]    4    2    9    6    9    2    5   10    2     3
##  [3,]    3    7    3    2    3   10    3    3    7     4
##  [4,]    1    1   10    5    4    9    9    5    5     1
##  [5,]    7    5    6    4    2    6   10    9    8    10
##  [6,]    2    3    2    1    7    3    6    6    6     8
##  [7,]   10    9    8    8    1    1    2    1   10     5
##  [8,]    6    4    5    3    5    8    1    2    9     7
##  [9,]    8    8    7   10    6    5    4    8    4     6
## [10,]    5   10    4    7    8    7    7    4    1     9
x <- rnorm(10)
a1 <- Rank(x)
a1
##  [1]  3  1  9  6 10  8  5  7  2  4

排序:Sort,Sort.int,sort_mat,sort_unique

x <- rnorm(1000)
system.time( s1 <- Sort(x) )
##    user  system elapsed 
##       0       0       0
system.time( s2 <- sort(x) )
##    user  system elapsed 
##       0       0       0

Outer 外积

outer(X, Y, FUN = "*", ...)
X %o% Y
x <- 1:9; names(x) <- x
# Multiplication & Power Tables
x %o% x
##   1  2  3  4  5  6  7  8  9
## 1 1  2  3  4  5  6  7  8  9
## 2 2  4  6  8 10 12 14 16 18
## 3 3  6  9 12 15 18 21 24 27
## 4 4  8 12 16 20 24 28 32 36
## 5 5 10 15 20 25 30 35 40 45
## 6 6 12 18 24 30 36 42 48 54
## 7 7 14 21 28 35 42 49 56 63
## 8 8 16 24 32 40 48 56 64 72
## 9 9 18 27 36 45 54 63 72 81
y <- 2:8; names(y) <- paste(y,":", sep = "")
outer(y, x, `^`)
##    1  2   3    4     5      6       7        8         9
## 2: 2  4   8   16    32     64     128      256       512
## 3: 3  9  27   81   243    729    2187     6561     19683
## 4: 4 16  64  256  1024   4096   16384    65536    262144
## 5: 5 25 125  625  3125  15625   78125   390625   1953125
## 6: 6 36 216 1296  7776  46656  279936  1679616  10077696
## 7: 7 49 343 2401 16807 117649  823543  5764801  40353607
## 8: 8 64 512 4096 32768 262144 2097152 16777216 134217728

Permute the given vector. 排列

向量的所有可能的组合

y <- c(1,2,3)
b <- permutation(y,4)
b
##      [,1] [,2] [,3]
## [1,]    1    2    3
## [2,]    1    3    2
## [3,]    2    1    3
## [4,]    2    3    1

返回具有给定向量的所有可能组合的矩阵或具有一个可能组合的一行矩阵。

选取两个向量的最大值/小值

x <- c(1,2,3)
y <- c(3,2,1)

res<-Pmax(x, y)
res
## [1] 3 2 3
Pmin(x, y)
## [1] 1 2 1
Pmin_Pmax(x,y)
##      [,1] [,2] [,3]
## [1,]    1    2    1
## [2,]    3    2    3

复制列/行。

x <- runif(3)
rep_col(x,3)
##           [,1]      [,2]      [,3]
## [1,] 0.3250886 0.3250886 0.3250886
## [2,] 0.7934436 0.7934436 0.7934436
## [3,] 0.9144585 0.9144585 0.9144585
rep_row(x,3)
##           [,1]      [,2]      [,3]
## [1,] 0.3250886 0.7934436 0.9144585
## [2,] 0.3250886 0.7934436 0.9144585
## [3,] 0.3250886 0.7934436 0.9144585

其他相关函数还包括: rowMins, rowFalse, nth, colrange, colMedians, colVars, colSort, rowSort, rowTrue

模拟正态分布的随机值。

x <- Rnorm(3)
x
## [1]  0.4739379 -0.7976145 -0.4067346

其他相关函数还包括:matrnorm, rvonmises, rvmf, rmvnorm

对矩阵/向量的每个元素进行四舍五入。

x <-matrix( rnorm( 50000 * 100), ncol = 100 )
system.time( a <- Round(x,5) )
##    user  system elapsed 
##   0.075   0.001   0.076
system.time( b <- round(x,5) )
##    user  system elapsed 
##   0.222   0.018   0.243

相关函数包括:Lchoose, Log, Choose

按列和行排列矩阵的任意/全部。

colAny(x)
rowAny(x)
colAll(x, parallel = FALSE)
rowAll(x, parallel = FALSE)
x <- matrix(as.logical(rbinom(100*100,1,0.5)),100,100)
system.time( a<-colAny(x) )
##    user  system elapsed 
##   0.000   0.000   0.001
system.time( b<-apply(x,2,any) )
##    user  system elapsed 
##       0       0       0
all.equal(a,b)
## [1] TRUE

行-矩阵/向量计数值的频率。

count_value(x, value)
colCountValues(x, values, parallel = FALSE)
rowCountValues(x, values, parallel = FALSE)
x <- rnorm(100)
value <- x[50]
system.time( count_value(x,value) )
##    user  system elapsed 
##       0       0       0

相关函数还包括:Median, binary_search, Order, nth

其他相关的函数还有很多,这些函数名都以row开头

加载多个R文件

sourceR(path,local=FALSE,encode = "UTF-8",print.errors=FALSE)
sourceRd(path,print.errors=FALSE)

标准化

x <- matrnorm( 100, 100 )
a1 <- scale(x)[1:100, ] 
a2 <- standardise(x) 
all.equal(as.vector(a1), as.vector(a2))
## [1] TRUE

对矩阵取子集

x <- matrix( rnorm(100 * 100), ncol = 100 )
res<-submatrix(x,1,50,1,25) # x[1:50,1:25]

表创建-每个值的频率。

x<-iris$Species
Table(x)
##  1  2  3 
## 50 50 50

因子

x <- rnorm(10)
R.factor<- as.factor(x)
Rfast.factor <- ufactor(x)

Lower/upper triangular matrix.

lower_tri(x, suma = FALSE, diag = FALSE)
upper_tri(x, suma = FALSE, diag = FALSE)
lower_tri.assign(x, v, diag = FALSE)
upper_tri.assign(x, v, diag = FALSE)
x <- matrix(runif(10*10),10,10)

距离矩阵

x <- matrix(rnorm(50 * 10), ncol = 10)
a1 <- Dist(x)

可选方法包括:“euclidean”, “manhattan”, “canberra1”, “canberra2”, “minimum”, “maximum”, “minkowski”, “bhattacharyya”, “hellinger”, “kullback_leibler”, “jensen_shannon” or “haversine”

数据列的索引。框架是特定类型。

res<-which.is(iris) # "numeric","factor","integer","logical".