MomX / Momocs

:dove: Morphometrics using R
http://momx.github.io/Momocs/
51 stars 18 forks source link

Import from list #153

Closed mattbk closed 8 years ago

mattbk commented 8 years ago

I'm trying to keep data within a list so I don't have lots of .txt files around. Is there a way to convert an R list to a Coo object?

Example list: dput(tpr)

list(structure(list(V1 = c(205, 215, 221, 228, 233, 240, 255, 259, 263, 267, 271, 278, 283, 289, 295, 304, 319, 323, 330, 338, 342, 347, 353, 357, 362, 369, 373, 404, 418, 428, 439, 451, 464, 477, 485, 493, 500, 514, 525, 534, 541, 547, 552, 557, 561, 565, 566, 567, 569, 569, 570, 569, 567, 565, 561, 557, 555, 548, 542, 535, 530, 526, 523, 517, 510, 503, 496, 488, 482, 471, 460, 448, 439, 426, 414, 395, 382, 368, 348, 329, 309, 293, 285, 271, 250, 231, 205, 185, 154, 138, 122, 108, 93, 83, 74, 65, 58, 52, 49, 47, 47, 49, 49, 51, 57, 64, 71, 76, 80, 89, 97, 103, 108, 114, 122, 134, 144, 152, 164, 171, 187, 196, 204, 213), V2 = c(515, 521, 524, 527, 530, 533, 539, 540, 541, 543, 544, 545, 547, 548, 549, 549, 549, 548, 544, 540, 537, 533, 530, 529, 527, 528, 526, 513, 507, 501, 495, 486, 478, 472, 468, 467, 462, 454, 444, 435, 428, 420, 411, 401, 395, 386, 380, 373, 366, 359, 351, 340, 330, 324, 313, 306, 299, 287, 276, 268, 261, 256, 252, 246, 240, 234, 226, 221, 216, 210, 204, 197, 194, 190, 187, 182, 180, 178, 174, 173, 173, 173, 174, 175, 178, 180, 187, 190, 199, 206, 216, 226, 240, 251, 265, 281, 293, 308, 321, 333, 347, 360, 373, 381, 392, 405, 420, 425, 431, 441, 449, 455, 459, 463, 468, 478, 486, 492, 495, 497, 507, 511, 512, 518)), .Names = c("V1", "V2"), class = "data.frame", row.names = c(NA, -124L)), structure(list(V1 = c(170, 182, 183, 202, 219, 234, 256, 271, 292, 311, 327, 347, 365, 380, 392, 407, 422, 437, 451, 469, 489, 512, 534, 558, 581, 605, 621, 638, 661, 673, 692, 702, 708, 712, 712, 712, 711, 707, 703, 694, 678, 661, 646, 625, 594, 572, 556, 537, 519, 498, 480, 457, 428, 402, 377, 352, 325, 294, 268, 244, 218, 193, 177, 160, 138, 120, 105, 88, 72, 53, 40, 26, 18, 15, 14, 16, 16, 21, 27, 36, 43, 57, 69, 83, 96, 104, 121, 140, 155, 172), V2 = c(530, 535, 535, 545, 555, 562, 571, 579, 587, 594, 596, 596, 595, 594, 591, 582, 574, 567, 559, 549, 542, 533, 524, 513, 501, 490, 482, 470, 455, 447, 421, 394, 367, 352, 336, 317, 294, 276, 263, 250, 231, 216, 204, 193, 180, 172, 168, 162, 157, 153, 150, 148, 144, 142, 141, 141, 141, 144, 147, 151, 159, 167, 171, 177, 184, 192, 200, 213, 227, 246, 261, 285, 313, 329, 347, 367, 368, 390, 409, 426, 440, 458, 471, 485, 496, 503, 512, 520, 526, 532)), .Names = c("V1", "V2"), class = "data.frame", row.names = c(NA, -90L)), structure(list(V1 = c(335, 366, 392, 418, 446, 474, 504, 533, 564, 593, 630, 658, 688, 716, 743, 779, 803, 828, 858, 876, 894, 911, 918, 936, 952, 964, 978, 990, 1000, 1008, 1012, 1012, 1011, 1008, 998, 989, 979, 964, 945, 930, 911, 894, 873, 845, 812, 788, 758, 731, 703, 674, 646, 613, 580, 538, 507, 469, 435, 408, 379, 348, 313, 279, 242, 214, 187, 159, 126, 105, 94, 75, 59, 45, 45, 34, 28, 25, 28, 33, 34, 44, 53, 64, 76, 77, 93, 108, 129, 147, 170, 188, 211, 231, 257, 277, 317, 335, 337), V2 = c(381, 380, 380, 380, 380, 379, 380, 380, 379, 379, 379, 379, 379, 378, 376, 373, 368, 363, 356, 348, 339, 332, 326, 317, 305, 294, 283, 268, 252, 237, 226, 215, 200, 186, 168, 152, 141, 129, 117, 110, 102, 97, 93, 87, 82, 78, 75, 74, 74, 72, 70, 69, 70, 70, 70, 72, 73, 73, 75, 78, 80, 83, 86, 90, 95, 100, 106, 114, 119, 132, 147, 164, 165, 183, 195, 213, 236, 255, 256, 272, 286, 303, 313, 313, 326, 339, 352, 361, 368, 373, 378, 380, 380, 381, 382, 380, 380)), .Names = c("V1", "V2"), class = "data.frame", row.names = c(NA, -97L)), structure(list(V1 = c(384, 398, 415, 433, 450, 467, 483, 495, 507, 513, 532, 549, 570, 591, 613, 628, 646, 661, 682, 705, 727, 746, 759, 785, 810, 830, 848, 864, 881, 895, 906, 915, 927, 928, 937, 945, 950, 957, 960, 963, 966, 964, 963, 955, 943, 933, 924, 912, 902, 891, 875, 859, 845, 821, 800, 782, 763, 741, 719, 694, 676, 643, 609, 581, 553, 528, 499, 464, 420, 395, 361, 338, 302, 281, 256, 229, 205, 187, 160, 135, 118, 113, 100, 90, 69, 57, 43, 32, 24, 17, 11, 8, 8, 9, 9, 10, 14, 21, 30, 42, 54, 68, 81, 99, 102, 115, 135, 151, 171, 190, 211, 228, 235, 250, 256, 271, 288, 303, 304, 323, 342, 343, 362, 386, 387), V2 = c(600, 603, 601, 598, 594, 588, 581, 576, 570, 568, 568, 566, 564, 562, 562, 561, 558, 555, 552, 548, 543, 539, 534, 525, 515, 505, 493, 481, 467, 452, 434, 416, 395, 389, 370, 352, 341, 322, 306, 295, 280, 259, 242, 223, 201, 183, 172, 159, 148, 141, 129, 118, 110, 101, 93, 85, 80, 74, 70, 65, 62, 57, 52, 49, 47, 46, 44, 43, 45, 48, 52, 54, 59, 62, 68, 74, 81, 87, 99, 111, 121, 125, 134, 141, 159, 174, 192, 213, 230, 248, 274, 291, 316, 316, 336, 336, 352, 374, 392, 410, 423, 437, 450, 465, 464, 476, 490, 497, 506, 512, 519, 523, 524, 526, 528, 542, 554, 564, 564, 576, 587, 585, 595, 601, 601)), .Names = c("V1", "V2"), class = "data.frame", row.names = c(NA, -125L)), structure(list(V1 = c(286, 296, 305, 314, 324, 338, 358, 372, 395, 412, 422, 441, 453, 474, 494, 508, 529, 541, 554, 569, 579, 588, 599, 607, 617, 624, 631, 635, 636, 634, 630, 623, 611, 599, 586, 570, 557, 542, 522, 502, 474, 453, 429, 407, 380, 360, 336, 317, 296, 273, 254, 235, 213, 195, 175, 160, 141, 129, 114, 101, 91, 82, 75, 71, 69, 69, 68, 70, 71, 72, 77, 83, 93, 101, 111, 123, 138, 149, 164, 181, 181, 193, 212, 224, 225, 240, 250, 262, 271, 276, 281, 286), V2 = c(364, 366, 365, 365, 360, 359, 358, 356, 355, 354, 354, 357, 358, 357, 355, 353, 349, 346, 340, 329, 320, 312, 301, 288, 272, 253, 236, 220, 207, 194, 181, 167, 152, 140, 130, 119, 112, 103, 97, 94, 92, 90, 88, 86, 84, 83, 82, 82, 82, 85, 90, 94, 98, 104, 111, 117, 128, 136, 149, 160, 170, 189, 204, 218, 233, 246, 246, 261, 261, 273, 287, 297, 306, 311, 319, 327, 336, 342, 348, 352, 353, 355, 356, 356, 356, 354, 354, 354, 357, 362, 363, 363)), .Names = c("V1", "V2"), class = "data.frame", row.names = c(NA, -92L)), structure(list(V1 = c(250, 270, 271, 290, 312, 337, 359, 381, 407, 407, 432, 453, 477, 502, 529, 546, 577, 604, 639, 676, 696, 719, 743, 768, 789, 790, 812, 837, 861, 880, 901, 927, 951, 968, 991, 1014, 1038, 1063, 1073, 1093, 1110, 1128, 1144, 1159, 1175, 1187, 1201, 1217, 1229, 1241, 1249, 1259, 1271, 1280, 1286, 1290, 1294, 1293, 1290, 1285, 1277, 1269, 1261, 1249, 1235, 1220, 1204, 1181, 1158, 1142, 1120, 1099, 1072, 1044, 1015, 987, 958, 925, 883, 848, 809, 775, 743, 712, 684, 653, 624, 609, 580, 551, 521, 486, 460, 426, 400, 368, 352, 317, 285, 267, 237, 203, 175, 147, 129, 120, 101, 84, 64, 54, 45, 36, 30, 25, 21, 21, 20, 20, 21, 22, 23, 30, 40, 40, 51, 65, 75, 91, 106, 128, 153, 162, 179, 197, 215, 235, 249), V2 = c(668, 671, 671, 676, 679, 682, 682, 682, 683, 685, 685, 684, 682, 677, 673, 669, 667, 664, 658, 651, 646, 640, 637, 631, 627, 627, 622, 617, 612, 607, 601, 593, 588, 582, 574, 566, 560, 551, 549, 542, 536, 528, 519, 509, 497, 486, 473, 458, 444, 430, 420, 403, 379, 359, 339, 321, 305, 292, 271, 256, 235, 221, 207, 192, 178, 169, 158, 145, 134, 127, 121, 117, 113, 109, 107, 106, 105, 104, 102, 103, 103, 103, 103, 103, 102, 102, 103, 102, 102, 103, 103, 103, 102, 101, 100, 100, 102, 108, 114, 119, 125, 132, 142, 151, 164, 170, 188, 214, 249, 269, 287, 323, 353, 384, 407, 408, 438, 462, 462, 485, 496, 516, 536, 537, 559, 578, 589, 602, 613, 625, 638, 640, 647, 652, 658, 664, 667 )), .Names = c("V1", "V2"), class = "data.frame", row.names = c(NA, -137L)), structure(list(V1 = c(227, 241, 252, 266, 279, 293, 307, 319, 332, 342, 352, 366, 382, 395, 411, 423, 434, 435, 458, 477, 500, 522, 539, 540, 561, 562, 580, 593, 599, 609, 615, 636, 655, 674, 686, 705, 722, 743, 766, 787, 804, 827, 846, 864, 893, 915, 945, 957, 971, 989, 1007, 1026, 1046, 1052, 1063, 1077, 1095, 1108, 1123, 1140, 1160, 1176, 1190, 1204, 1220, 1238, 1256, 1271, 1289, 1305, 1329, 1346, 1347, 1361, 1369, 1383, 1394, 1409, 1422, 1429, 1441, 1449, 1456, 1466, 1477, 1493, 1499, 1508, 1522, 1534, 1543, 1543, 1553, 1566, 1576, 1586, 1594, 1601, 1610, 1618, 1623, 1629, 1636, 1640, 1642, 1646, 1651, 1654, 1655, 1655, 1655, 1653, 1649, 1641, 1637, 1628, 1619, 1608, 1599, 1583, 1570, 1551, 1534, 1518, 1498, 1483, 1461, 1438, 1422, 1398, 1375, 1348, 1324, 1302, 1277, 1254, 1234, 1208, 1183, 1170, 1147, 1132, 1100, 1075, 1056, 1032, 1008, 981, 960, 938, 919, 893, 870, 842, 818, 807, 787, 760, 734, 709, 674, 645, 616, 582, 558, 536, 506, 466, 430, 400, 368, 333, 314, 292, 268, 245, 226, 209, 187, 169, 149, 132, 112, 113, 93, 81, 69, 51, 41, 36, 33, 30, 29, 29, 28, 29, 32, 34, 39, 46, 53, 63, 75, 85, 92, 103, 117, 131, 135, 137, 140, 144, 148, 151, 154, 156, 158, 164, 172, 184, 188, 197, 205, 206, 215, 222, 229), V2 = c(969, 979, 985, 991, 996, 999, 1002, 1003, 1004, 1002, 1001, 999, 999, 994, 994, 992, 990, 990, 989, 990, 994, 999, 1002, 1002, 1007, 1007, 1012, 1015, 1017, 1014, 1014, 1015, 1014, 1013, 1014, 1012, 1010, 1010, 1010, 1010, 1009, 1010, 1010, 1010, 1008, 1009, 1008, 1008, 1007, 1006, 1004, 1002, 999, 997, 996, 993, 989, 987, 982, 974, 969, 963, 959, 953, 946, 940, 931, 924, 916, 906, 892, 883, 883, 873, 865, 858, 849, 838, 829, 823, 815, 807, 800, 792, 781, 765, 758, 749, 733, 720, 707, 707, 694, 676, 660, 643, 629, 615, 597, 582, 564, 552, 537, 522, 510, 488, 470, 444, 424, 406, 387, 366, 349, 326, 315, 299, 286, 272, 261, 245, 233, 219, 208, 198, 187, 179, 170, 163, 157, 151, 145, 140, 137, 134, 131, 130, 129, 129, 128, 127, 125, 125, 119, 116, 113, 109, 104, 101, 98, 94, 91, 85, 80, 76, 70, 69, 67, 65, 62, 60, 59, 60, 61, 64, 67, 70, 76, 85, 94, 103, 114, 128, 135, 148, 159, 171, 184, 196, 215, 230, 247, 267, 292, 292, 318, 340, 361, 394, 422, 443, 450, 467, 481, 495, 511, 528, 548, 568, 585, 602, 617, 638, 659, 677, 689, 701, 717, 731, 737, 741, 752, 764, 788, 803, 821, 831, 841, 858, 878, 905, 913, 929, 941, 941, 954, 962, 971)), .Names = c("V1", "V2"), class = "data.frame", row.names = c(NA, -227L)), structure(list(V1 = c(98, 107, 117, 128, 140, 142, 150, 157, 163, 170, 179, 183, 187, 189, 193, 195, 197, 198, 200, 201, 203, 206, 209, 211, 214, 219, 222, 223, 223, 224, 223, 218, 210, 201, 192, 179, 169, 160, 153, 141, 131, 119, 111, 104, 96, 89, 81, 76, 70, 64, 60, 56, 51, 48, 45, 43, 44, 44, 47, 51, 56, 60, 67, 74, 82, 90, 98), V2 = c(232, 233, 235, 234, 234, 236, 235, 234, 232, 231, 228, 227, 226, 225, 221, 218, 212, 207, 202, 197, 194, 188, 184, 181, 178, 171, 167, 165, 157, 151, 145, 129, 123, 118, 115, 112, 110, 109, 109, 110, 112, 116, 118, 120, 125, 129, 134, 137, 141, 147, 152, 157, 164, 170, 177, 184, 193, 194, 201, 207, 214, 220, 224, 227, 229, 230, 232)), .Names = c("V1", "V2" ), class = "data.frame", row.names = c(NA, -67L)), structure(list( V1 = c(116, 121, 127, 128, 136, 141, 145, 151, 156, 161, 166, 172, 178, 185, 189, 194, 198, 203, 208, 213, 218, 221, 226, 230, 235, 240, 243, 247, 250, 254, 254, 256, 256, 256, 253, 247, 243, 239, 234, 229, 223, 220, 213, 208, 202, 196, 187, 178, 169, 157, 149, 138, 127, 116, 106, 100, 92, 85, 78, 75, 75, 72, 69, 69, 68, 68, 69, 70, 71, 72, 75, 78, 82, 86, 91, 96, 101, 104, 108, 112, 115, 116), V2 = c(225, 226, 225, 225, 224, 224, 223, 223, 223, 223, 223, 222, 222, 220, 218, 216, 215, 213, 210, 208, 205, 203, 201, 199, 197, 196, 193, 191, 188, 182, 178, 172, 166, 160, 153, 148, 146, 142, 139, 136, 134, 132, 130, 129, 128, 126, 126, 125, 125, 125, 125, 126, 128, 131, 134, 136, 139, 143, 148, 152, 153, 157, 164, 167, 172, 176, 181, 187, 191, 195, 201, 205, 208, 211, 214, 217, 219, 220, 222, 224, 225, 225)), .Names = c("V1", "V2"), class = "data.frame", row.names = c(NA, -82L)))

mattbk commented 8 years ago

Okay, it looks like I can use Out(). Will make sure it works for me.

mattbk commented 8 years ago

Yes, it works.