Hi

See

https://github.com/hongqin/RCompBio/blob/master/48states/48states-permutation-igraph.r

and

http://www.youtube.com/watch?v=GE2l3LYDQG0

Hope they are useful,

Hong Qin




On Fri, Apr 26, 2013 at 5:08 AM, Cat Cowie <cat.e.cowie@gmail.com> wrote:

> Hi r-help forum,
>
> I have been collecting contact data (with proximity logger collars)
> between a few different species of animal. All animals wear the
> collars, and any contact between the animals should be detected and
> recorded by both collars. However, this isn't always the case and more
> contacts may be recorded on one collar of the two. This is fine, it
> depends on battery life and other things that I will have to discuss!
> I now have each contact recorded as a 'group in 4 columns':
>
> > head(data)
>   record            start duration     pair
> 1      1 27/05/2012 04:40     4948 CO1 CO12
> 2      2 31/05/2012 04:48      278 CO1 CO12
> 3      3 31/05/2012 05:30        3 CO1 CO12
> 4      4 31/05/2012 05:51      159 CO1 CO12
> 5      5 31/05/2012 05:56       47 CO1 CO12
> 6      6 31/05/2012 06:02      107 CO1 CO12
>
>
> The first column shows the record number, the second shows the start
> date and time of the contact, the third shows the contact duration and
> the fourth shows the pair of animals involved in the contact. In this
> case the top 6 contacts are all between animals CO1 and CO12. There
> are nearly 100,000 records. There were many animals that could have
> contacted each other:
>
> > animals
>    animals
> 1      CO1
> 2      CO2
> 3      CO3
> 4      CO4
> 5      CO5
> 6      CO6
> 7      CO7
> 8      CO8
> 9      CO9
> 10    CO10
> 11    CO11
> 12    CO12
> 13    CO13
> 14    CO14
> 15    CO15
> 16    CO16
> 17    CO17
> 18     PO1
> 19     PO2
> 20     PO3
> 21     PO4
> 22     PO5
> 23     PO6
> 24     PO7
> 25     PO8
> 26     PO9
> 27    PO10
> 28    PO11
> 29    PO12
> 30    PO13
> 31     PI1
> 32     PI2
> 33     PI3
> 34     PI4
> 35     PI5
> 36     PI6
> 37     PI7
> 38     PI8
> 39     RD1
> 40     RD2
> 41     WB1
> 42     WB2
>
> Because both collars may have recorded the single contact, I need to
> remove the reciprocal contacts from this dataset. For example, you may
> have records for "CO1 CO2" that are mirrored by records for "CO2 CO1".
> If there are the same number of records it doesn't matter which of
> these you select, as long as only one set is used for further
> analysis. Where there is an unequal number of contacts recorded on the
> two collars between a pair, I would like to select the records which
> have the most contacts. So, if there were 10 records recorded for "CO1
> CO2" and 15 for "CO2 CO1" I would like to reject the first 10 contacts
> and retain the 15. There are some cases where only one version of the
> group is recorded, e.g. just "CO1 CO3", with no reciprocal "CO3 CO1".
> In this case I would like to retain the data that I have.
>
> I would normally like to present you with my attempts so far but as a
> relatively new (but enthusiastic!) R user I am struggling to know
> where to start.
>
> I present more data here... sadly dput(head(data, 200) is printing all
> the dates (all nearly 100,000 of them, regardless of using head()!) so
> I hope this is ok for now:
>
> > head(data,300)
>     record            start duration     pair
> 1        1 27/05/2012 04:40     4948 CO1 CO12
> 2        2 31/05/2012 04:48      278 CO1 CO12
> 3        3 31/05/2012 05:30        3 CO1 CO12
> 4        4 31/05/2012 05:51      159 CO1 CO12
> 5        5 31/05/2012 05:56       47 CO1 CO12
> 6        6 31/05/2012 06:02      107 CO1 CO12
> 7        7 31/05/2012 06:08       86 CO1 CO12
> 8        8 31/05/2012 06:11      194 CO1 CO12
> 9        9 31/05/2012 06:20       87 CO1 CO12
> 10      10 31/05/2012 06:24       12 CO1 CO12
> 11      11 31/05/2012 06:32       11 CO1 CO12
> 12      12 31/05/2012 06:40      227 CO1 CO12
> 13      13 31/05/2012 06:47      115 CO1 CO12
> 14      14 12/04/2011 13:39      109 CO1 CO15
> 15      15 12/04/2011 22:29        3 CO1 CO15
> 16      16 12/04/2011 22:45       44 CO1 CO15
> 17      17 12/04/2011 23:20       55 CO1 CO15
> 18      18 13/04/2011 02:50       58 CO1 CO15
> 19      19 13/04/2011 03:15       11 CO1 CO15
> 20      20 13/04/2011 05:38       65 CO1 CO15
> 21      21 13/04/2011 08:55      122 CO1 CO15
> 22      22 13/04/2011 11:06        4 CO1 CO15
> 23      23 13/04/2011 13:47       53 CO1 CO15
> 24      24 13/04/2011 13:57       32 CO1 CO15
> 25      25 13/04/2011 14:32       16 CO1 CO15
> 26      26 13/04/2011 14:41        4 CO1 CO15
> 27      27 13/04/2011 21:53       33 CO1 CO15
> 28      28 14/04/2011 01:00       41 CO1 CO15
> 29      29 14/04/2011 01:07        5 CO1 CO15
> 30      30 14/04/2011 01:46        2 CO1 CO15
> 31      31 14/04/2011 06:43        3 CO1 CO15
> 32      32 14/04/2011 08:44        3 CO1 CO15
> 33      33 14/04/2011 08:51       64 CO1 CO15
> 34      34 14/04/2011 13:59        6 CO1 CO15
> 35      35 14/04/2011 14:11       11 CO1 CO15
> 36      36 14/04/2011 14:36      169 CO1 CO15
> 37      37 14/04/2011 14:42       19 CO1 CO15
> 38      38 14/04/2011 15:04       48 CO1 CO15
> 39      39 14/04/2011 15:10        2 CO1 CO15
> 40      40 14/04/2011 17:41       58 CO1 CO15
> 41      41 14/04/2011 18:33        3 CO1 CO15
> 42      42 15/04/2011 16:26       50 CO1 CO15
> 43      43 15/04/2011 20:12        3 CO1 CO15
> 44      44 16/04/2011 23:04        2 CO1 CO15
> 45      45 17/04/2011 02:57        7 CO1 CO15
> 46      46 17/04/2011 03:08       32 CO1 CO15
> 47      47 17/04/2011 14:51       55 CO1 CO15
> 48      48 17/04/2011 15:14       24 CO1 CO15
> 49      49 19/04/2011 03:36        7 CO1 CO15
> 50      50 19/04/2011 19:30        3 CO1 CO15
> 51      51 19/04/2011 19:35       30 CO1 CO15
> 52      52 19/04/2011 20:14       16 CO1 CO15
> 53      53 20/04/2011 15:34        3 CO1 CO15
> 54      54 20/04/2011 15:38       21 CO1 CO15
> 55      55 20/04/2011 19:05        3 CO1 CO15
> 56      56 20/04/2011 19:08        3 CO1 CO15
> 57      57 21/04/2011 20:26       42 CO1 CO15
> 58      58 21/04/2011 20:31        3 CO1 CO15
> 59      59 25/04/2011 20:02        2 CO1 CO15
> 60      60 26/04/2011 03:02        2 CO1 CO15
> 61      61 27/04/2011 00:59        4 CO1 CO15
> 62      62 27/04/2011 03:10       37 CO1 CO15
> 63      63 27/04/2011 19:49        7 CO1 CO15
> 64      64 28/04/2011 23:17        3 CO1 CO15
> 65      65 29/04/2011 14:56       18 CO1 CO15
> 66      66 29/04/2011 17:14        2 CO1 CO15
> 67      67 29/04/2011 17:41      112 CO1 CO15
> 68      68 03/05/2011 02:04        2 CO1 CO15
> 69      69 03/05/2011 02:48       12 CO1 CO15
> 70      70 03/05/2011 03:42        3 CO1 CO15
> 71      71 03/05/2011 04:05       11 CO1 CO15
> 72      72 04/05/2011 19:31        2 CO1 CO15
> 73      73 05/05/2011 01:09        7 CO1 CO15
> 74      74 05/05/2011 01:40        6 CO1 CO15
> 75      75 12/04/2011 08:05        5 CO1 CO16
> 76      76 12/04/2011 13:54      163 CO1 CO16
> 77      77 12/04/2011 13:58       90 CO1 CO16
> 78      78 12/04/2011 14:08       24 CO1 CO16
> 79      79 12/04/2011 14:10       87 CO1 CO16
> 80      80 12/04/2011 18:59       99 CO1 CO16
> 81      81 12/04/2011 20:11       72 CO1 CO16
> 82      82 12/04/2011 20:19       16 CO1 CO16
> 83      83 12/04/2011 22:31       17 CO1 CO16
> 84      84 12/04/2011 22:42       99 CO1 CO16
> 85      85 12/04/2011 22:45       68 CO1 CO16
> 86      86 12/04/2011 22:56       10 CO1 CO16
> 87      87 13/04/2011 00:15        6 CO1 CO16
> 88      88 13/04/2011 01:31        4 CO1 CO16
> 89      89 13/04/2011 01:53       38 CO1 CO16
> 90      90 13/04/2011 06:31       12 CO1 CO16
> 91      91 13/04/2011 13:35        8 CO1 CO16
> 92      92 13/04/2011 14:44      216 CO1 CO16
> 93      93 13/04/2011 18:30       21 CO1 CO16
> 94      94 13/04/2011 20:23        3 CO1 CO16
> 95      95 13/04/2011 22:59        2 CO1 CO16
> 96      96 14/04/2011 00:59        4 CO1 CO16
> 97      97 14/04/2011 01:07       10 CO1 CO16
> 98      98 14/04/2011 01:45       53 CO1 CO16
> 99      99 14/04/2011 03:03       29 CO1 CO16
> 100    100 14/04/2011 03:31      617 CO1 CO16
> 101    101 14/04/2011 03:46       12 CO1 CO16
> 102    102 14/04/2011 03:48       10 CO1 CO16
> 103    103 14/04/2011 03:49       13 CO1 CO16
> 104    104 14/04/2011 03:51        3 CO1 CO16
> 105    105 14/04/2011 03:53       10 CO1 CO16
> 106    106 14/04/2011 03:54      259 CO1 CO16
> 107    107 14/04/2011 04:04       10 CO1 CO16
> 108    108 14/04/2011 04:17        8 CO1 CO16
> 109    109 14/04/2011 04:19       40 CO1 CO16
> 110    110 14/04/2011 04:35        6 CO1 CO16
> 111    111 14/04/2011 04:39      102 CO1 CO16
> 112    112 14/04/2011 04:42       59 CO1 CO16
> 113    113 14/04/2011 04:44        7 CO1 CO16
> 114    114 14/04/2011 04:48        5 CO1 CO16
> 115    115 14/04/2011 04:51       41 CO1 CO16
> 116    116 14/04/2011 05:09       87 CO1 CO16
> 117    117 14/04/2011 05:21       81 CO1 CO16
> 118    118 14/04/2011 07:01      271 CO1 CO16
> 119    119 14/04/2011 14:34       13 CO1 CO16
> 120    120 14/04/2011 14:35       26 CO1 CO16
> 121    121 14/04/2011 14:37        2 CO1 CO16
> 122    122 14/04/2011 14:45       44 CO1 CO16
> 123    123 14/04/2011 15:06      193 CO1 CO16
> 124    124 14/04/2011 19:17      168 CO1 CO16
> 125    125 16/04/2011 23:43       54 CO1 CO16
> 126    126 17/04/2011 22:31       58 CO1 CO16
> 127    127 17/04/2011 22:34        5 CO1 CO16
> 128    128 19/04/2011 01:26       17 CO1 CO16
> 129    129 19/04/2011 18:59        3 CO1 CO16
> 130    130 20/04/2011 18:41        2 CO1 CO16
> 131    131 21/04/2011 13:13        9 CO1 CO16
> 132    132 21/04/2011 20:17       18 CO1 CO16
> 133    133 21/04/2011 22:55       10 CO1 CO16
> 134    134 22/04/2011 20:49        2 CO1 CO16
> 135    135 27/04/2011 02:28        2 CO1 CO16
> 136    136 27/04/2011 20:52        3 CO1 CO16
> 137    137 28/04/2011 18:00       43 CO1 CO16
> 138    138 28/04/2011 18:28       58 CO1 CO16
> 139    139 28/04/2011 18:34        4 CO1 CO16
> 140    140 29/04/2011 02:27        5 CO1 CO16
> 141    141 29/04/2011 17:05      395 CO1 CO16
> 142    142 30/04/2011 03:37       21 CO1 CO16
> 143    143 30/04/2011 15:26        3 CO1 CO16
> 144    144 30/04/2011 19:12       16 CO1 CO16
> 145    145 30/04/2011 20:32       54 CO1 CO16
> 146    146 30/04/2011 20:35      114 CO1 CO16
> 147    147 02/05/2011 00:26       30 CO1 CO16
> 148    148 03/05/2011 18:56       20 CO1 CO16
> 149    149 17/07/2010 04:02        6  CO1 CO2
> 150    150 18/07/2010 18:45        3  CO1 CO2
> 151    151 19/07/2010 02:43        9  CO1 CO2
> 152    152 19/07/2010 17:48       56  CO1 CO2
> 153    153 20/07/2010 03:15        4  CO1 CO2
> 154    154 20/07/2010 04:17       48  CO1 CO2
> 155    155 20/07/2010 04:20       49  CO1 CO2
> 156    156 21/07/2010 16:09      114  CO1 CO2
> 157    157 22/07/2010 15:02       12  CO1 CO2
> 158    158 22/07/2010 21:44       40  CO1 CO2
> 159    159 23/07/2010 17:10        2  CO1 CO2
> 160    160 23/07/2010 17:12      114  CO1 CO2
> 161    161 23/07/2010 22:22        4  CO1 CO2
> 162    162 24/07/2010 03:32       28  CO1 CO2
> 163    163 24/07/2010 03:42        2  CO1 CO2
> 164    164 24/07/2010 19:08       12  CO1 CO2
> 165    165 24/07/2010 20:25        9  CO1 CO2
> 166    166 25/07/2010 20:49       14  CO1 CO2
> 167    167 26/07/2010 13:53        5  CO1 CO2
> 168    168 26/07/2010 20:17        9  CO1 CO2
> 169    169 26/07/2010 20:19      181  CO1 CO2
> 170    170 26/07/2010 20:31       38  CO1 CO2
> 171    171 26/07/2010 22:52        5  CO1 CO2
> 172    172 27/07/2010 01:43        6  CO1 CO2
> 173    173 27/07/2010 02:30       29  CO1 CO2
> 174    174 27/07/2010 05:26       31  CO1 CO2
> 175    175 27/07/2010 13:08       61  CO1 CO2
> 176    176 27/07/2010 13:10        5  CO1 CO2
> 177    177 27/07/2010 13:11        8  CO1 CO2
> 178    178 27/07/2010 13:18       25  CO1 CO2
> 179    179 28/07/2010 03:20       49  CO1 CO2
> 180    180 28/07/2010 03:29       15  CO1 CO2
> 181    181 28/07/2010 03:42        9  CO1 CO2
> 182    182 28/07/2010 03:44       39  CO1 CO2
> 183    183 28/07/2010 04:20        4  CO1 CO2
> 184    184 28/07/2010 04:22       47  CO1 CO2
> 185    185 28/07/2010 04:26      384  CO1 CO2
> 186    186 28/07/2010 04:35      204  CO1 CO2
> 187    187 28/07/2010 04:42       10  CO1 CO2
> 188    188 28/07/2010 04:59        3  CO1 CO2
> 189    189 28/07/2010 07:39        2  CO1 CO2
> 190    190 28/07/2010 15:18       67  CO1 CO2
> 191    191 28/07/2010 20:02       62  CO1 CO2
> 192    192 29/07/2010 03:31       13  CO1 CO2
> 193    193 29/07/2010 04:25       14  CO1 CO2
> 194    194 29/07/2010 09:14        4  CO1 CO2
> 195    195 29/07/2010 09:20     1112  CO1 CO2
> 196    196 29/07/2010 09:40        4  CO1 CO2
> 197    197 29/07/2010 12:12      352  CO1 CO2
> 198    198 29/07/2010 12:44      796  CO1 CO2
> 199    199 29/07/2010 14:32        4  CO1 CO2
> 200    200 29/07/2010 19:42       15  CO1 CO2
> 201    201 30/07/2010 09:51       17  CO1 CO2
> 202    202 30/07/2010 09:53        8  CO1 CO2
> 203    203 30/07/2010 10:02       31  CO1 CO2
> 204    204 30/07/2010 10:18      117  CO1 CO2
> 205    205 30/07/2010 21:51        2  CO1 CO2
> 206    206 31/07/2010 01:56       25  CO1 CO2
> 207    207 31/07/2010 03:57       58  CO1 CO2
> 208    208 31/07/2010 04:04       12  CO1 CO2
> 209    209 31/07/2010 15:06       42  CO1 CO2
> 210    210 01/08/2010 01:59       28  CO1 CO2
> 211    211 01/08/2010 02:15       31  CO1 CO2
> 212    212 01/08/2010 03:11       10  CO1 CO2
> 213    213 01/08/2010 03:28       30  CO1 CO2
> 214    214 01/08/2010 03:42        4  CO1 CO2
> 215    215 01/08/2010 03:48      104  CO1 CO2
> 216    216 01/08/2010 06:49       94  CO1 CO2
> 217    217 01/08/2010 06:52       66  CO1 CO2
> 218    218 01/08/2010 07:11       18  CO1 CO2
> 219    219 01/08/2010 07:13        2  CO1 CO2
> 220    220 01/08/2010 14:25       43  CO1 CO2
> 221    221 01/08/2010 14:51        4  CO1 CO2
> 222    222 01/08/2010 16:22      195  CO1 CO2
> 223    223 01/08/2010 16:34       55  CO1 CO2
> 224    224 01/08/2010 16:36       39  CO1 CO2
> 225    225 01/08/2010 16:46        6  CO1 CO2
> 226    226 01/08/2010 18:18       32  CO1 CO2
> 227    227 01/08/2010 18:52       38  CO1 CO2
> 228    228 02/08/2010 02:57      132  CO1 CO2
> 229    229 02/08/2010 13:37       11  CO1 CO2
> 230    230 02/08/2010 16:32       62  CO1 CO2
> 231    231 03/08/2010 01:51       57  CO1 CO2
> 232    232 03/08/2010 03:24       37  CO1 CO2
> 233    233 03/08/2010 03:49       44  CO1 CO2
> 234    234 03/08/2010 03:51       31  CO1 CO2
> 235    235 03/08/2010 04:45       70  CO1 CO2
> 236    236 03/08/2010 04:54        4  CO1 CO2
> 237    237 03/08/2010 05:03       59  CO1 CO2
> 238    238 04/08/2010 15:10       64  CO1 CO2
> 239    239 04/08/2010 15:12        4  CO1 CO2
> 240    240 04/08/2010 15:14       92  CO1 CO2
> 241    241 04/08/2010 19:39        7  CO1 CO2
> 242    242 04/08/2010 20:54       31  CO1 CO2
> 243    243 05/08/2010 01:36       30  CO1 CO2
> 244    244 05/08/2010 01:57       25  CO1 CO2
> 245    245 05/08/2010 02:01       42  CO1 CO2
> 246    246 05/08/2010 02:06      181  CO1 CO2
> 247    247 05/08/2010 02:53        5  CO1 CO2
> 248    248 05/08/2010 17:32        2  CO1 CO2
> 249    249 05/08/2010 17:35        5  CO1 CO2
> 250    250 05/08/2010 17:43        9  CO1 CO2
> 251    251 05/08/2010 20:09       71  CO1 CO2
> 252    252 05/08/2010 20:13       80  CO1 CO2
> 253    253 05/08/2010 20:18       61  CO1 CO2
> 254    254 05/08/2010 20:29        9  CO1 CO2
> 255    255 05/08/2010 20:38        5  CO1 CO2
> 256    256 05/08/2010 21:51       15  CO1 CO2
> 257    257 06/08/2010 02:16       12  CO1 CO2
> 258    258 06/08/2010 02:42       56  CO1 CO2
> 259    259 06/08/2010 02:45        3  CO1 CO2
> 260    260 06/08/2010 09:38      529  CO1 CO2
> 261    261 06/08/2010 15:25        2  CO1 CO2
> 262    262 06/08/2010 15:34        5  CO1 CO2
> 263    263 06/08/2010 15:39      367  CO1 CO2
> 264    264 06/08/2010 15:50       55  CO1 CO2
> 265    265 06/08/2010 15:52      111  CO1 CO2
> 266    266 06/08/2010 16:00      263  CO1 CO2
> 267    267 06/08/2010 16:07       56  CO1 CO2
> 268    268 06/08/2010 17:21        8  CO1 CO2
> 269    269 06/08/2010 17:32      211  CO1 CO2
> 270    270 06/08/2010 18:48       20  CO1 CO2
> 271    271 06/08/2010 19:10       57  CO1 CO2
> 272    272 06/08/2010 19:17       57  CO1 CO2
> 273    273 06/08/2010 19:24       43  CO1 CO2
> 274    274 06/08/2010 19:40       12  CO1 CO2
> 275    275 06/08/2010 19:56       17  CO1 CO2
> 276    276 07/08/2010 02:45        4  CO1 CO2
> 277    277 07/08/2010 14:42       37  CO1 CO2
> 278    278 07/08/2010 14:44        3  CO1 CO2
> 279    279 07/08/2010 15:58      305  CO1 CO2
> 280    280 07/08/2010 18:11      105  CO1 CO2
> 281    281 07/08/2010 18:20       87  CO1 CO2
> 282    282 07/08/2010 20:24       20  CO1 CO2
> 283    283 08/08/2010 16:10       57  CO1 CO2
> 284    284 08/08/2010 16:12       38  CO1 CO2
> 285    285 08/08/2010 16:17      105  CO1 CO2
> 286    286 08/08/2010 16:20       82  CO1 CO2
> 287    287 08/08/2010 16:24      151  CO1 CO2
> 288    288 08/08/2010 16:30       20  CO1 CO2
> 289    289 08/08/2010 16:49        5  CO1 CO2
> 290    290 08/08/2010 16:54       44  CO1 CO2
> 291    291 08/08/2010 17:16       64  CO1 CO2
> 292    292 08/08/2010 17:23       56  CO1 CO2
> 293    293 08/08/2010 17:25       50  CO1 CO2
> 294    294 08/08/2010 17:40       53  CO1 CO2
> 295    295 08/08/2010 17:46       54  CO1 CO2
> 296    296 08/08/2010 17:50       57  CO1 CO2
> 297    297 08/08/2010 17:53      103  CO1 CO2
> 298    298 08/08/2010 17:56       51  CO1 CO2
> 299    299 08/08/2010 18:07       12  CO1 CO2
> 300    300 08/08/2010 18:41        2  CO1 CO2
>
>
>
> Thanks, Cat
>
> ______________________________________________
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

	[[alternative HTML version deleted]]

