Använda slumpmässiga permutationer för att bedöma assortativitet
I den här övningen undersöker du hur sannolik den observerade assortativiteten i vänskapsnätverket är, givet knotpunkternas kön, genom att utföra en slumpmässig permutationsprocedur. Du slumpar om könet för knotpunkterna i nätverket 1 000 gånger och beräknar assortativiteten för varje slumpmässigt nätverk.
Den här övningen är en del av kursen
Nätverksanalys i R
Övningsinstruktioner
- Använd
assortativity()för att beräkna assortativiteten för grafobjektetg1baserat på kön med hjälp av objektetvaluessom beräknades i föregående övning, och tilldela resultatet till objektetobserved.assortativity. - Beräkna inuti for-loopen assortativiteten för nätverket
g1medassortativity(), och slumpa om objektetvaluesvarje gång medsample(). - Rita fördelningen av assortativitetsvärden från permutationsproceduren med
hist(), och lägg till en röd vertikal linje för det ursprungliga observerade assortativitetsvärdet för nätverketg1, som lagras iobserved.assortativity.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Calculate the observed assortativity
observed.assortativity <- ___(g1, values)
# Calculate the assortativity of the network randomizing the gender attribute 1000 times
results <- vector('list', 1000)
for(i in 1:1000){
results[[i]] <- ___(g1, sample(___))
}
# Plot the distribution of assortativity values and add a red vertical line at the original observed value
___(unlist(results))
abline(v = ___, col = "red", lty = 3, lwd=2)