[R] Permuting friendship nominations in a social network
Jeff Newmiller
jdnewmil at dcn.davis.CA.us
Thu Sep 5 07:09:04 CEST 2013
It might be, but with appropriate indexes a SQL engine (via sqldf or RODBC for example) might be able to do it that way anyway.
---------------------------------------------------------------------------
Jeff Newmiller The ..... ..... Go Live...
DCN:<jdnewmil at dcn.davis.ca.us> Basics: ##.#. ##.#. Live Go...
Live: OO#.. Dead: OO#.. Playing
Research Engineer (Solar/Batteries O.O#. #.O#. with
/Software/Embedded Controllers) .OO#. .OO#. rocks...1k
---------------------------------------------------------------------------
Sent from my phone. Please excuse my brevity.
hollymaya <hollymaya at gmail.com> wrote:
>Jean,
>Thank you for the suggestion. Actually the dataset is quite large so
>that method might be unmanageable.
>Holly
>
>
>hollymaya at gmail.com
>
>
>
>On Sep 4, 2013, at 10:14 AM, "Adams, Jean" <jvadams at usgs.gov> wrote:
>
>> Holly,
>>
>> I don't know of a clever way to do this, but I can think of a brute
>force way, which might only be feasible if you have a small data set
>(as in your example). You could permute every possible set of
>connections, then choose from that collection only the ones that meet
>your criteria.
>>
>> Using your example, there are c=21 possible connections among the n=7
>unique individuals, c = n*(n-1)/2. Your example shows a total of 8
>connections (16 rows / 2). So you could generate all permutations of
>choose(21, 8) = 203,490 ways to have 8 connections. Then subset the
>ones that have individual totals the same as your example (1 connection
>for Alicia and Beth, 2 for Kerry and Kim, 3 for James and John, and 4
>for Rachel).
>>
>> Jean
>>
>>
>> On Tue, Sep 3, 2013 at 1:01 PM, hollymaya <hollymaya at gmail.com>
>wrote:
>>
>> I have a dataset of dyads (an edgelist) representing friendship
>nominations between egos and their nominated alters. The network is
>undirected so if ego is connected to alter, then there is a separate
>observation in the dataset for the reverse. I would like to randomly
>permute the friendships so that 1.) the total degree for each
>individual remains the same, i.e. each individual ends up with the same
>number of friendships they had in the original undirected dataset and
>2.) there are no self loops, so individuals are not connected to
>themselves. Any suggestions on this would be greatly appreciated.
>>
>>
>>
>> Example
>>
>> Observed data:
>>
>> Ego Alter
>>
>> Alicia James
>>
>> Beth Kim
>>
>> James John
>>
>> James Rachel
>>
>> James Alicia
>>
>> John Kerry
>>
>> John Rachel
>>
>> John James
>>
>> Kerry Rachel
>>
>> Kerry John
>>
>> Kim Rachel
>>
>> Kim Beth
>>
>> Rachel Kim
>>
>> Rachel James
>>
>> Rachel Kerry
>>
>> Rachel John
>>
>>
>>
>> Permuted data:
>>
>> Ego Alter
>>
>> Alicia
>>
>> Rachel
>>
>> Beth
>>
>> James
>>
>> James
>>
>> Beth
>>
>> James
>>
>> John
>>
>> James
>>
>> Kim
>>
>> John
>>
>> Rachel
>>
>> John
>>
>> Kerry
>>
>> John
>>
>> James
>>
>> Kerry
>>
>> Rachel
>>
>> Kerry
>>
>> John
>>
>> Kim
>>
>> Rachel
>>
>> Kim
>>
>> James
>>
>> Rachel
>>
>> Kim
>>
>> Rachel
>>
>> John
>>
>> Rachel
>>
>> Alicia
>>
>> Rachel
>>
>> Kerry
>>
>>
>>
>> Thank you in advance,
>> Holly
>>
>>
>>
>>
>>
>>
>>
>>
>> hollymaya at gmail.com
>>
>>
>>
>>
>> [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> R-help at 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]]
>
>______________________________________________
>R-help at 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.
More information about the R-help
mailing list