Використання рандомізацій для оцінки асортативності
У цій вправі ви визначите, наскільки ймовірною є спостережувана асортативність у мережі дружби з огляду на статі вершин, виконавши процедуру рандомізації. Ви випадково переставите статі вершин у мережі 1000 разів і щоразу перерахуєте асортативність для кожної випадкової мережі.
Ця вправа є частиною курсу
Аналіз мереж у R
Інструкції до вправи
- Використайте
assortativity()для обчислення асортативності об'єкта графаg1за статтю, застосовуючи об'єктvalues, обчислений у попередній вправі, і присвойте результат об'єктуobserved.assortativity. - Усередині циклу for обчислюйте асортативність мережі
g1за допомогоюassortativity(), щоразу випадково переставляючи об'єктvaluesфункцієюsample(). - Побудуйте розподіл значень асортативності з цієї процедури перестановок за допомогою
hist()і додайте червону вертикальну лінію для початкового значення спостережуваної асортативності мережіg1, яке збережено вobserved.assortativity.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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)