reshape2 熔化不产生所有对
reshape2 melt not producing all pairs
我有一个 332 x 332 的距离矩阵,其中包含所有可能的站对之间的距离。我需要将此矩阵转换为具有三列的 data.frame - start.id、end.id 和距离。
我尝试了 reshape2
包中的 melt
函数,但结果不正确
这是数据的片段
mat
72 79 82 83 116 119 120 127 128 137 143 144 146 147 150 151 152 153 157 160 161
72 NA 6.43 7.458 11.546 3.784 10.252 12.780 4.835 5.230 2.168 10.614 9.806 7.058 6.533 7.117 6.300 6.693 2.595 10.665 3.280 5.338
79 NA NA 1.406 5.442 2.956 4.317 7.300 1.695 1.525 6.673 4.510 4.616 0.426 0.775 3.460 1.296 0.589 5.257 4.561 4.785 1.571
82 NA NA NA 5.656 4.101 4.213 7.152 2.840 2.554 6.410 4.601 3.767 1.447 1.796 2.694 1.400 1.610 5.947 4.652 5.452 2.495
83 NA NA NA NA 8.447 1.736 2.170 7.347 6.782 11.050 1.958 1.888 5.005 5.192 6.826 5.599 5.039 10.175 2.426 9.226 6.723
116 NA NA NA NA NA 7.156 9.684 1.739 2.134 4.741 7.860 6.710 3.359 3.779 4.626 3.204 3.939 3.327 7.911 3.702 2.242
119 NA NA NA NA NA NA 2.970 6.158 5.593 9.861 2.397 0.699 4.209 4.396 5.637 4.410 4.243 8.986 2.403 8.037 5.534
120 NA NA NA NA NA NA NA 8.418 7.853 12.101 3.409 2.959 6.477 6.664 6.962 6.670 6.511 11.315 3.899 10.274 7.794
127 NA NA NA NA NA NA NA NA 1.411 5.137 6.358 5.734 2.201 2.277 3.903 2.176 2.437 3.721 6.409 4.095 1.519
128 NA NA NA NA NA NA NA NA NA 5.131 5.629 4.973 1.545 1.884 3.187 1.415 1.708 3.715 5.680 4.089 0.803
137 NA NA NA NA NA NA NA NA NA NA 12.152 8.855 7.651 8.071 5.996 5.377 8.231 1.744 12.203 1.821 4.729
143 NA NA NA NA NA NA NA NA NA NA NA 1.956 3.707 3.894 5.632 4.405 3.741 8.981 0.489 8.032 5.529
144 NA NA NA NA NA NA NA NA NA NA NA NA 3.902 4.089 4.937 3.710 3.936 8.286 2.096 7.337 4.834
146 NA NA NA NA NA NA NA NA NA NA NA NA NA 0.348 3.695 1.695 0.508 5.307 4.480 5.681 1.922
147 NA NA NA NA NA NA NA NA NA NA NA NA NA NA 4.104 2.092 0.803 5.932 4.378 6.306 2.371
150 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 1.818 3.474 4.786 5.697 3.745 1.793
151 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 1.792 4.554 5.008 3.682 1.102
152 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 6.111 3.971 5.178 1.964
153 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 8.798 0.684 3.513
157 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 8.467 5.964
160 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 3.153
161 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
164 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
167 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
168 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
173 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
174 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
195 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
212 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
216 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
217 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
218 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
223 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
224 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
225 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
228 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
229 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
232 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
233 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
236 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
237 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
238 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
239 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
241 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
242 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
243 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
244 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
245 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
247 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
248 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
249 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
164 167 168 173 174 195 212 216 217 218 223 224 225 228 229 232 233 236 237 238
72 2.978 3.446 4.112 1.401 5.321 7.529 3.404 10.426 10.561 10.305 4.915 7.890 3.839 2.611 5.804 9.826 10.006 5.368 5.180 4.715
79 6.082 4.951 3.242 5.981 4.483 1.425 3.270 4.322 4.457 4.201 3.054 1.786 3.031 5.689 1.885 3.722 3.902 2.609 3.018 2.657
82 6.472 6.024 3.932 6.671 4.572 1.289 4.415 4.413 4.003 4.326 3.744 0.734 4.176 5.950 2.055 3.813 3.993 2.972 3.039 3.802
83 9.689 9.241 8.160 10.899 8.090 5.151 8.634 2.960 3.386 1.208 7.972 5.160 8.395 9.924 6.283 2.360 1.589 6.746 6.813 8.021
116 4.921 3.868 1.314 3.660 3.600 4.775 0.791 7.672 6.946 7.551 1.819 5.136 0.743 4.554 2.708 7.072 7.252 3.086 2.745 1.619
119 8.500 8.052 6.971 9.710 6.901 4.355 7.793 2.164 2.197 1.815 6.783 4.364 7.554 8.735 5.094 1.564 1.744 5.557 5.624 7.180
120 10.740 10.292 9.231 11.970 8.840 6.623 10.053 4.432 4.457 2.676 9.043 6.632 9.814 11.439 7.354 3.832 3.057 7.668 7.735 9.440
127 5.317 4.261 1.706 4.445 3.993 3.273 1.604 6.170 6.305 6.049 1.518 3.634 1.365 4.950 1.985 5.570 5.750 2.363 2.444 0.991
128 5.311 4.255 1.700 4.439 3.987 2.544 2.522 5.441 5.209 5.320 1.512 2.905 2.283 4.944 1.269 4.841 5.021 1.993 2.349 1.909
137 1.448 1.987 5.308 1.514 4.296 9.067 5.083 11.964 9.091 9.414 4.639 9.428 5.035 1.081 4.693 11.364 11.544 4.530 4.425 5.911
143 8.495 8.047 6.966 9.705 6.896 3.853 7.336 1.248 1.312 0.903 6.778 3.862 7.097 8.730 5.089 1.032 1.212 5.552 5.619 6.723
144 7.800 7.352 6.271 9.010 6.201 4.048 7.093 1.857 1.497 1.565 6.083 4.057 6.854 8.035 4.394 1.257 1.437 4.857 4.924 6.480
146 6.903 5.847 3.292 6.031 4.882 1.344 3.790 4.241 4.376 4.120 3.104 1.705 3.551 6.536 2.284 3.641 3.821 3.008 3.417 3.177
147 7.528 6.472 3.917 6.656 6.204 0.954 3.815 4.139 4.274 4.018 3.729 1.315 3.576 7.161 2.685 3.539 3.719 3.409 4.655 3.202
150 4.211 3.763 3.355 5.803 2.311 3.889 4.076 5.458 4.774 5.097 3.167 3.334 3.834 4.910 1.374 4.858 5.038 1.565 1.633 3.929
151 4.888 3.848 2.539 5.278 3.289 2.052 3.361 4.769 4.085 4.408 2.351 2.235 3.122 4.586 0.691 4.169 4.349 1.415 1.824 2.748
152 6.475 5.344 4.096 6.835 4.876 0.835 3.994 3.732 3.867 3.611 3.908 1.196 3.755 7.340 2.278 3.132 3.312 3.002 3.411 3.381
153 1.595 0.850 3.017 1.653 3.159 5.653 4.056 8.559 7.875 8.198 3.295 6.049 4.008 1.228 3.477 7.959 8.139 3.314 3.288 4.884
157 8.930 8.482 7.401 10.140 7.331 4.288 7.771 1.336 1.654 0.980 7.213 4.297 7.532 9.165 5.524 1.467 0.972 5.987 6.054 7.158
160 1.721 0.477 2.468 2.056 2.274 5.293 3.714 8.199 7.515 7.838 2.935 5.689 3.666 1.354 3.117 7.599 7.779 2.954 2.604 4.542
161 4.716 3.379 1.520 4.259 3.117 2.744 2.187 5.688 5.004 5.327 1.332 3.154 2.094 4.117 0.766 5.088 5.268 1.183 1.545 1.918
164 NA 1.280 3.582 1.578 3.447 6.407 4.828 9.313 8.629 8.952 4.049 8.390 4.780 0.698 4.231 8.713 8.893 4.068 3.718 5.656
167 NA NA 2.764 2.039 2.570 5.589 4.004 8.495 7.811 8.134 3.231 5.985 3.956 1.337 3.413 7.895 8.075 3.250 2.900 4.832
168 NA NA NA 3.357 2.286 4.184 2.174 7.090 6.406 6.729 1.587 4.580 2.126 3.280 2.008 6.490 6.670 1.845 1.657 2.517
173 NA NA NA NA 3.984 7.547 3.563 10.444 8.592 8.915 3.773 7.908 3.515 1.339 4.194 9.844 10.024 4.031 3.843 4.391
174 NA NA NA NA NA 4.963 3.386 6.871 6.187 6.510 2.605 6.042 3.338 2.747 2.345 6.271 6.451 1.626 1.394 3.730
195 NA NA NA NA NA NA 4.797 4.515 4.650 4.394 4.711 0.901 4.558 8.143 3.061 3.915 4.095 3.785 4.267 4.184
212 NA NA NA NA NA NA NA 7.599 6.873 7.478 1.746 5.063 0.670 4.481 2.635 6.999 7.179 3.013 2.672 1.546
216 NA NA NA NA NA NA NA NA 0.318 2.122 6.556 4.473 7.327 8.508 4.867 1.643 1.823 5.330 5.397 6.953
217 NA NA NA NA NA NA NA NA NA 1.933 6.367 4.284 7.138 8.319 4.678 1.454 1.634 5.141 5.208 6.764
218 NA NA NA NA NA NA NA NA NA NA 6.669 4.055 7.290 8.621 4.980 1.255 0.840 5.443 5.510 6.916
223 NA NA NA NA NA NA NA NA NA NA NA 4.562 0.866 4.136 1.945 6.498 6.678 1.852 1.630 1.127
224 NA NA NA NA NA NA NA NA NA NA NA NA 4.318 7.903 2.802 3.675 3.855 3.719 3.786 3.944
225 NA NA NA NA NA NA NA NA NA NA NA NA NA 4.720 2.493 6.567 6.747 2.871 2.530 1.114
228 NA NA NA NA NA NA NA NA NA NA NA NA NA NA 4.322 9.316 9.496 3.862 3.630 5.747
229 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 4.779 4.959 1.002 1.411 2.308
232 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0.652 4.992 5.059 6.163
233 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 5.581 5.648 6.752
236 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0.674 2.971
237 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 2.596
238 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
239 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
241 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
242 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
243 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
244 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
245 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
247 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
248 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
249 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
239 241 242 243 244 245 247 248 249
72 10.949 11.610 10.418 10.941 11.611 10.754 4.191 6.089 6.269
79 4.845 5.506 5.228 4.837 5.748 4.650 2.449 0.934 0.784
82 4.697 5.358 4.379 4.995 5.572 4.502 3.594 2.079 1.929
83 1.337 1.042 2.022 0.625 2.209 1.496 7.940 5.990 5.840
116 7.640 8.301 7.322 7.938 8.515 7.445 1.095 3.342 3.522
119 1.043 1.176 0.648 1.341 1.373 0.538 6.751 5.194 5.044
120 2.400 1.684 2.406 1.832 1.414 2.205 9.011 7.462 7.312
127 6.693 7.354 6.346 6.685 7.596 6.498 0.898 1.816 1.996
128 5.903 6.564 5.585 6.201 6.778 5.708 1.480 1.696 1.617
137 9.785 10.446 9.467 10.083 11.657 9.590 5.387 7.634 7.814
143 2.173 2.409 2.568 1.926 3.076 1.978 6.630 4.692 4.542
144 0.929 1.590 0.611 1.227 1.804 0.734 6.051 4.887 4.737
146 4.764 5.425 5.147 4.756 5.667 4.569 3.084 0.984 0.834
147 4.662 5.323 5.045 4.654 5.565 4.467 3.109 1.756 1.606
150 5.468 6.129 5.150 5.766 5.796 5.273 3.391 3.846 3.767
151 4.779 5.440 4.461 5.077 5.654 4.584 2.319 2.153 2.003
152 4.255 4.916 4.638 4.247 5.158 4.060 3.288 1.349 1.199
153 8.569 9.230 8.251 8.867 10.199 8.374 4.360 6.607 6.787
157 2.317 2.336 3.003 1.853 3.220 2.122 7.065 5.127 4.977
160 8.209 8.870 7.891 8.507 9.084 8.014 4.018 5.535 5.219
161 5.698 6.359 5.380 5.996 6.573 5.503 1.380 2.140 2.061
164 9.323 9.984 9.005 9.621 10.487 9.128 5.132 7.379 7.559
167 8.505 9.166 8.187 8.803 9.809 8.310 4.308 6.555 6.735
168 7.100 7.761 6.782 7.398 7.975 6.905 1.979 4.187 4.367
173 9.286 9.947 8.968 9.584 10.161 9.091 3.867 6.114 6.294
174 6.881 7.542 6.563 7.179 7.756 6.686 3.192 5.205 4.889
195 5.038 5.699 5.421 5.030 5.941 4.843 4.091 2.132 1.982
212 7.567 8.228 7.249 7.865 8.442 7.372 1.022 3.269 3.449
216 2.656 3.317 2.338 2.954 3.531 2.461 6.524 5.303 5.153
217 2.467 3.128 2.149 2.765 3.342 2.272 6.335 5.114 4.964
218 1.348 2.009 1.975 1.340 2.251 1.153 6.823 4.885 4.735
223 6.877 7.538 6.559 7.175 7.752 6.682 0.589 2.768 2.948
224 4.798 5.459 5.181 4.790 5.701 4.603 3.851 1.892 1.742
225 7.690 8.351 7.107 7.682 8.300 7.495 0.880 2.837 3.017
228 9.926 10.587 9.608 10.224 10.254 9.731 5.223 7.470 7.650
229 5.389 6.050 5.071 5.687 6.264 5.194 1.770 2.563 2.484
232 1.613 2.274 2.008 1.605 2.516 1.418 6.070 4.132 3.982
233 1.968 2.137 2.597 1.654 2.871 1.773 6.659 4.721 4.571
236 5.862 6.523 5.544 6.160 6.538 5.667 2.433 4.176 3.769
237 5.917 6.578 5.599 6.215 6.792 5.722 2.058 3.801 3.394
238 6.997 7.658 6.741 6.989 7.900 6.802 0.454 2.144 2.324
239 NA 1.363 1.555 0.656 1.831 0.733 6.969 5.031 4.881
241 NA NA 1.727 0.550 1.914 0.875 7.319 5.778 5.628
242 NA NA NA 1.812 1.192 0.920 6.663 5.472 5.322
243 NA NA NA NA 2.059 0.888 7.332 5.492 5.342
244 NA NA NA NA NA 1.612 8.418 6.869 6.719
245 NA NA NA NA NA NA 6.786 5.245 5.095
247 NA NA NA NA NA NA NA 2.341 2.521
248 NA NA NA NA NA NA NA NA 0.669
249 NA NA NA NA NA NA NA NA NA
test = melt(dist_mat)
No id variables; using all as measure variables
head(test)
variable value
1 72 NA
2 72 NA
3 72 NA
4 72 NA
5 72 NA
6 72 NA
如何获得所有可能的对和与它们关联的值?
dput(mat)
structure(list(`72` = c(NA_integer_, NA_integer_, NA_integer_,
NA_integer_, NA_integer_, NA_integer_, NA_integer_, NA_integer_,
NA_integer_, NA_integer_), `79` = c(6.43, NA, NA, NA, NA, NA,
NA, NA, NA, NA), `82` = c(7.458, 1.406, NA, NA, NA, NA, NA, NA,
NA, NA), `83` = c(11.546, 5.442, 5.656, NA, NA, NA, NA, NA, NA,
NA), `116` = c(3.784, 2.956, 4.101, 8.447, NA, NA, NA, NA, NA,
NA), `119` = c(10.252, 4.317, 4.213, 1.736, 7.156, NA, NA, NA,
NA, NA), `120` = c(12.78, 7.3, 7.152, 2.17, 9.684, 2.97, NA,
NA, NA, NA), `127` = c(4.835, 1.695, 2.84, 7.347, 1.739, 6.158,
8.418, NA, NA, NA), `128` = c(5.23, 1.525, 2.554, 6.782, 2.134,
5.593, 7.853, 1.411, NA, NA), `137` = c(2.168, 6.673, 6.41, 11.05,
4.741, 9.861, 12.101, 5.137, 5.131, NA)), .Names = c("72", "79",
"82", "83", "116", "119", "120", "127", "128", "137"), row.names = c("72",
"79", "82", "83", "116", "119", "120", "127", "128", "137"), class = "data.frame")
问题是您没有指定 id 变量。您可以通过将行名称转换为变量然后 melt
:
来创建一个
mat$rn <- row.names(mat)
m1 <- melt(mat, id.vars = "rn")
给出:
> head(m1, 15)
rn variable value
1 72 72 NA
2 79 72 NA
3 82 72 NA
4 83 72 NA
5 116 72 NA
6 119 72 NA
7 120 72 NA
8 127 72 NA
9 128 72 NA
10 137 72 NA
11 72 79 6.43
12 79 79 NA
13 82 79 NA
14 83 79 NA
15 116 79 NA
但是,您没有提供矩阵,而是 dput
中的数据框。当您将 melt
函数应用于矩阵而不指定 id 变量时,它会按预期工作:
m <- as.matrix(mat)
m2 <- melt(m)
给出:
> head(m2,15)
Var1 Var2 value
1 72 72 NA
2 79 72 NA
3 82 72 NA
4 83 72 NA
5 116 72 NA
6 119 72 NA
7 120 72 NA
8 127 72 NA
9 128 72 NA
10 137 72 NA
11 72 79 6.43
12 79 79 NA
13 82 79 NA
14 83 79 NA
15 116 79 NA
我有一个 332 x 332 的距离矩阵,其中包含所有可能的站对之间的距离。我需要将此矩阵转换为具有三列的 data.frame - start.id、end.id 和距离。
我尝试了 reshape2
包中的 melt
函数,但结果不正确
这是数据的片段
mat 72 79 82 83 116 119 120 127 128 137 143 144 146 147 150 151 152 153 157 160 161 72 NA 6.43 7.458 11.546 3.784 10.252 12.780 4.835 5.230 2.168 10.614 9.806 7.058 6.533 7.117 6.300 6.693 2.595 10.665 3.280 5.338 79 NA NA 1.406 5.442 2.956 4.317 7.300 1.695 1.525 6.673 4.510 4.616 0.426 0.775 3.460 1.296 0.589 5.257 4.561 4.785 1.571 82 NA NA NA 5.656 4.101 4.213 7.152 2.840 2.554 6.410 4.601 3.767 1.447 1.796 2.694 1.400 1.610 5.947 4.652 5.452 2.495 83 NA NA NA NA 8.447 1.736 2.170 7.347 6.782 11.050 1.958 1.888 5.005 5.192 6.826 5.599 5.039 10.175 2.426 9.226 6.723 116 NA NA NA NA NA 7.156 9.684 1.739 2.134 4.741 7.860 6.710 3.359 3.779 4.626 3.204 3.939 3.327 7.911 3.702 2.242 119 NA NA NA NA NA NA 2.970 6.158 5.593 9.861 2.397 0.699 4.209 4.396 5.637 4.410 4.243 8.986 2.403 8.037 5.534 120 NA NA NA NA NA NA NA 8.418 7.853 12.101 3.409 2.959 6.477 6.664 6.962 6.670 6.511 11.315 3.899 10.274 7.794 127 NA NA NA NA NA NA NA NA 1.411 5.137 6.358 5.734 2.201 2.277 3.903 2.176 2.437 3.721 6.409 4.095 1.519 128 NA NA NA NA NA NA NA NA NA 5.131 5.629 4.973 1.545 1.884 3.187 1.415 1.708 3.715 5.680 4.089 0.803 137 NA NA NA NA NA NA NA NA NA NA 12.152 8.855 7.651 8.071 5.996 5.377 8.231 1.744 12.203 1.821 4.729 143 NA NA NA NA NA NA NA NA NA NA NA 1.956 3.707 3.894 5.632 4.405 3.741 8.981 0.489 8.032 5.529 144 NA NA NA NA NA NA NA NA NA NA NA NA 3.902 4.089 4.937 3.710 3.936 8.286 2.096 7.337 4.834 146 NA NA NA NA NA NA NA NA NA NA NA NA NA 0.348 3.695 1.695 0.508 5.307 4.480 5.681 1.922 147 NA NA NA NA NA NA NA NA NA NA NA NA NA NA 4.104 2.092 0.803 5.932 4.378 6.306 2.371 150 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 1.818 3.474 4.786 5.697 3.745 1.793 151 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 1.792 4.554 5.008 3.682 1.102 152 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 6.111 3.971 5.178 1.964 153 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 8.798 0.684 3.513 157 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 8.467 5.964 160 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 3.153 161 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 164 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 167 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 168 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 173 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 174 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 195 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 212 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 216 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 217 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 218 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 223 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 224 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 225 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 228 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 229 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 232 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 233 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 236 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 237 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 238 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 239 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 241 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 242 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 243 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 244 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 245 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 247 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 248 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 249 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 164 167 168 173 174 195 212 216 217 218 223 224 225 228 229 232 233 236 237 238 72 2.978 3.446 4.112 1.401 5.321 7.529 3.404 10.426 10.561 10.305 4.915 7.890 3.839 2.611 5.804 9.826 10.006 5.368 5.180 4.715 79 6.082 4.951 3.242 5.981 4.483 1.425 3.270 4.322 4.457 4.201 3.054 1.786 3.031 5.689 1.885 3.722 3.902 2.609 3.018 2.657 82 6.472 6.024 3.932 6.671 4.572 1.289 4.415 4.413 4.003 4.326 3.744 0.734 4.176 5.950 2.055 3.813 3.993 2.972 3.039 3.802 83 9.689 9.241 8.160 10.899 8.090 5.151 8.634 2.960 3.386 1.208 7.972 5.160 8.395 9.924 6.283 2.360 1.589 6.746 6.813 8.021 116 4.921 3.868 1.314 3.660 3.600 4.775 0.791 7.672 6.946 7.551 1.819 5.136 0.743 4.554 2.708 7.072 7.252 3.086 2.745 1.619 119 8.500 8.052 6.971 9.710 6.901 4.355 7.793 2.164 2.197 1.815 6.783 4.364 7.554 8.735 5.094 1.564 1.744 5.557 5.624 7.180 120 10.740 10.292 9.231 11.970 8.840 6.623 10.053 4.432 4.457 2.676 9.043 6.632 9.814 11.439 7.354 3.832 3.057 7.668 7.735 9.440 127 5.317 4.261 1.706 4.445 3.993 3.273 1.604 6.170 6.305 6.049 1.518 3.634 1.365 4.950 1.985 5.570 5.750 2.363 2.444 0.991 128 5.311 4.255 1.700 4.439 3.987 2.544 2.522 5.441 5.209 5.320 1.512 2.905 2.283 4.944 1.269 4.841 5.021 1.993 2.349 1.909 137 1.448 1.987 5.308 1.514 4.296 9.067 5.083 11.964 9.091 9.414 4.639 9.428 5.035 1.081 4.693 11.364 11.544 4.530 4.425 5.911 143 8.495 8.047 6.966 9.705 6.896 3.853 7.336 1.248 1.312 0.903 6.778 3.862 7.097 8.730 5.089 1.032 1.212 5.552 5.619 6.723 144 7.800 7.352 6.271 9.010 6.201 4.048 7.093 1.857 1.497 1.565 6.083 4.057 6.854 8.035 4.394 1.257 1.437 4.857 4.924 6.480 146 6.903 5.847 3.292 6.031 4.882 1.344 3.790 4.241 4.376 4.120 3.104 1.705 3.551 6.536 2.284 3.641 3.821 3.008 3.417 3.177 147 7.528 6.472 3.917 6.656 6.204 0.954 3.815 4.139 4.274 4.018 3.729 1.315 3.576 7.161 2.685 3.539 3.719 3.409 4.655 3.202 150 4.211 3.763 3.355 5.803 2.311 3.889 4.076 5.458 4.774 5.097 3.167 3.334 3.834 4.910 1.374 4.858 5.038 1.565 1.633 3.929 151 4.888 3.848 2.539 5.278 3.289 2.052 3.361 4.769 4.085 4.408 2.351 2.235 3.122 4.586 0.691 4.169 4.349 1.415 1.824 2.748 152 6.475 5.344 4.096 6.835 4.876 0.835 3.994 3.732 3.867 3.611 3.908 1.196 3.755 7.340 2.278 3.132 3.312 3.002 3.411 3.381 153 1.595 0.850 3.017 1.653 3.159 5.653 4.056 8.559 7.875 8.198 3.295 6.049 4.008 1.228 3.477 7.959 8.139 3.314 3.288 4.884 157 8.930 8.482 7.401 10.140 7.331 4.288 7.771 1.336 1.654 0.980 7.213 4.297 7.532 9.165 5.524 1.467 0.972 5.987 6.054 7.158 160 1.721 0.477 2.468 2.056 2.274 5.293 3.714 8.199 7.515 7.838 2.935 5.689 3.666 1.354 3.117 7.599 7.779 2.954 2.604 4.542 161 4.716 3.379 1.520 4.259 3.117 2.744 2.187 5.688 5.004 5.327 1.332 3.154 2.094 4.117 0.766 5.088 5.268 1.183 1.545 1.918 164 NA 1.280 3.582 1.578 3.447 6.407 4.828 9.313 8.629 8.952 4.049 8.390 4.780 0.698 4.231 8.713 8.893 4.068 3.718 5.656 167 NA NA 2.764 2.039 2.570 5.589 4.004 8.495 7.811 8.134 3.231 5.985 3.956 1.337 3.413 7.895 8.075 3.250 2.900 4.832 168 NA NA NA 3.357 2.286 4.184 2.174 7.090 6.406 6.729 1.587 4.580 2.126 3.280 2.008 6.490 6.670 1.845 1.657 2.517 173 NA NA NA NA 3.984 7.547 3.563 10.444 8.592 8.915 3.773 7.908 3.515 1.339 4.194 9.844 10.024 4.031 3.843 4.391 174 NA NA NA NA NA 4.963 3.386 6.871 6.187 6.510 2.605 6.042 3.338 2.747 2.345 6.271 6.451 1.626 1.394 3.730 195 NA NA NA NA NA NA 4.797 4.515 4.650 4.394 4.711 0.901 4.558 8.143 3.061 3.915 4.095 3.785 4.267 4.184 212 NA NA NA NA NA NA NA 7.599 6.873 7.478 1.746 5.063 0.670 4.481 2.635 6.999 7.179 3.013 2.672 1.546 216 NA NA NA NA NA NA NA NA 0.318 2.122 6.556 4.473 7.327 8.508 4.867 1.643 1.823 5.330 5.397 6.953 217 NA NA NA NA NA NA NA NA NA 1.933 6.367 4.284 7.138 8.319 4.678 1.454 1.634 5.141 5.208 6.764 218 NA NA NA NA NA NA NA NA NA NA 6.669 4.055 7.290 8.621 4.980 1.255 0.840 5.443 5.510 6.916 223 NA NA NA NA NA NA NA NA NA NA NA 4.562 0.866 4.136 1.945 6.498 6.678 1.852 1.630 1.127 224 NA NA NA NA NA NA NA NA NA NA NA NA 4.318 7.903 2.802 3.675 3.855 3.719 3.786 3.944 225 NA NA NA NA NA NA NA NA NA NA NA NA NA 4.720 2.493 6.567 6.747 2.871 2.530 1.114 228 NA NA NA NA NA NA NA NA NA NA NA NA NA NA 4.322 9.316 9.496 3.862 3.630 5.747 229 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 4.779 4.959 1.002 1.411 2.308 232 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0.652 4.992 5.059 6.163 233 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 5.581 5.648 6.752 236 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 0.674 2.971 237 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 2.596 238 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 239 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 241 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 242 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 243 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 244 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 245 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 247 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 248 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 249 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 239 241 242 243 244 245 247 248 249 72 10.949 11.610 10.418 10.941 11.611 10.754 4.191 6.089 6.269 79 4.845 5.506 5.228 4.837 5.748 4.650 2.449 0.934 0.784 82 4.697 5.358 4.379 4.995 5.572 4.502 3.594 2.079 1.929 83 1.337 1.042 2.022 0.625 2.209 1.496 7.940 5.990 5.840 116 7.640 8.301 7.322 7.938 8.515 7.445 1.095 3.342 3.522 119 1.043 1.176 0.648 1.341 1.373 0.538 6.751 5.194 5.044 120 2.400 1.684 2.406 1.832 1.414 2.205 9.011 7.462 7.312 127 6.693 7.354 6.346 6.685 7.596 6.498 0.898 1.816 1.996 128 5.903 6.564 5.585 6.201 6.778 5.708 1.480 1.696 1.617 137 9.785 10.446 9.467 10.083 11.657 9.590 5.387 7.634 7.814 143 2.173 2.409 2.568 1.926 3.076 1.978 6.630 4.692 4.542 144 0.929 1.590 0.611 1.227 1.804 0.734 6.051 4.887 4.737 146 4.764 5.425 5.147 4.756 5.667 4.569 3.084 0.984 0.834 147 4.662 5.323 5.045 4.654 5.565 4.467 3.109 1.756 1.606 150 5.468 6.129 5.150 5.766 5.796 5.273 3.391 3.846 3.767 151 4.779 5.440 4.461 5.077 5.654 4.584 2.319 2.153 2.003 152 4.255 4.916 4.638 4.247 5.158 4.060 3.288 1.349 1.199 153 8.569 9.230 8.251 8.867 10.199 8.374 4.360 6.607 6.787 157 2.317 2.336 3.003 1.853 3.220 2.122 7.065 5.127 4.977 160 8.209 8.870 7.891 8.507 9.084 8.014 4.018 5.535 5.219 161 5.698 6.359 5.380 5.996 6.573 5.503 1.380 2.140 2.061 164 9.323 9.984 9.005 9.621 10.487 9.128 5.132 7.379 7.559 167 8.505 9.166 8.187 8.803 9.809 8.310 4.308 6.555 6.735 168 7.100 7.761 6.782 7.398 7.975 6.905 1.979 4.187 4.367 173 9.286 9.947 8.968 9.584 10.161 9.091 3.867 6.114 6.294 174 6.881 7.542 6.563 7.179 7.756 6.686 3.192 5.205 4.889 195 5.038 5.699 5.421 5.030 5.941 4.843 4.091 2.132 1.982 212 7.567 8.228 7.249 7.865 8.442 7.372 1.022 3.269 3.449 216 2.656 3.317 2.338 2.954 3.531 2.461 6.524 5.303 5.153 217 2.467 3.128 2.149 2.765 3.342 2.272 6.335 5.114 4.964 218 1.348 2.009 1.975 1.340 2.251 1.153 6.823 4.885 4.735 223 6.877 7.538 6.559 7.175 7.752 6.682 0.589 2.768 2.948 224 4.798 5.459 5.181 4.790 5.701 4.603 3.851 1.892 1.742 225 7.690 8.351 7.107 7.682 8.300 7.495 0.880 2.837 3.017 228 9.926 10.587 9.608 10.224 10.254 9.731 5.223 7.470 7.650 229 5.389 6.050 5.071 5.687 6.264 5.194 1.770 2.563 2.484 232 1.613 2.274 2.008 1.605 2.516 1.418 6.070 4.132 3.982 233 1.968 2.137 2.597 1.654 2.871 1.773 6.659 4.721 4.571 236 5.862 6.523 5.544 6.160 6.538 5.667 2.433 4.176 3.769 237 5.917 6.578 5.599 6.215 6.792 5.722 2.058 3.801 3.394 238 6.997 7.658 6.741 6.989 7.900 6.802 0.454 2.144 2.324 239 NA 1.363 1.555 0.656 1.831 0.733 6.969 5.031 4.881 241 NA NA 1.727 0.550 1.914 0.875 7.319 5.778 5.628 242 NA NA NA 1.812 1.192 0.920 6.663 5.472 5.322 243 NA NA NA NA 2.059 0.888 7.332 5.492 5.342 244 NA NA NA NA NA 1.612 8.418 6.869 6.719 245 NA NA NA NA NA NA 6.786 5.245 5.095 247 NA NA NA NA NA NA NA 2.341 2.521 248 NA NA NA NA NA NA NA NA 0.669 249 NA NA NA NA NA NA NA NA NA
test = melt(dist_mat) No id variables; using all as measure variables head(test) variable value 1 72 NA 2 72 NA 3 72 NA 4 72 NA 5 72 NA 6 72 NA
如何获得所有可能的对和与它们关联的值?
dput(mat) structure(list(`72` = c(NA_integer_, NA_integer_, NA_integer_, NA_integer_, NA_integer_, NA_integer_, NA_integer_, NA_integer_, NA_integer_, NA_integer_), `79` = c(6.43, NA, NA, NA, NA, NA, NA, NA, NA, NA), `82` = c(7.458, 1.406, NA, NA, NA, NA, NA, NA, NA, NA), `83` = c(11.546, 5.442, 5.656, NA, NA, NA, NA, NA, NA, NA), `116` = c(3.784, 2.956, 4.101, 8.447, NA, NA, NA, NA, NA, NA), `119` = c(10.252, 4.317, 4.213, 1.736, 7.156, NA, NA, NA, NA, NA), `120` = c(12.78, 7.3, 7.152, 2.17, 9.684, 2.97, NA, NA, NA, NA), `127` = c(4.835, 1.695, 2.84, 7.347, 1.739, 6.158, 8.418, NA, NA, NA), `128` = c(5.23, 1.525, 2.554, 6.782, 2.134, 5.593, 7.853, 1.411, NA, NA), `137` = c(2.168, 6.673, 6.41, 11.05, 4.741, 9.861, 12.101, 5.137, 5.131, NA)), .Names = c("72", "79", "82", "83", "116", "119", "120", "127", "128", "137"), row.names = c("72", "79", "82", "83", "116", "119", "120", "127", "128", "137"), class = "data.frame")
问题是您没有指定 id 变量。您可以通过将行名称转换为变量然后 melt
:
mat$rn <- row.names(mat)
m1 <- melt(mat, id.vars = "rn")
给出:
> head(m1, 15)
rn variable value
1 72 72 NA
2 79 72 NA
3 82 72 NA
4 83 72 NA
5 116 72 NA
6 119 72 NA
7 120 72 NA
8 127 72 NA
9 128 72 NA
10 137 72 NA
11 72 79 6.43
12 79 79 NA
13 82 79 NA
14 83 79 NA
15 116 79 NA
但是,您没有提供矩阵,而是 dput
中的数据框。当您将 melt
函数应用于矩阵而不指定 id 变量时,它会按预期工作:
m <- as.matrix(mat)
m2 <- melt(m)
给出:
> head(m2,15)
Var1 Var2 value
1 72 72 NA
2 79 72 NA
3 82 72 NA
4 83 72 NA
5 116 72 NA
6 119 72 NA
7 120 72 NA
8 127 72 NA
9 128 72 NA
10 137 72 NA
11 72 79 6.43
12 79 79 NA
13 82 79 NA
14 83 79 NA
15 116 79 NA