Bắt đầu ngayBắt đầu miễn phí

Dùng hoán vị ngẫu nhiên để đánh giá tính đồng dạng (assortativity)

Trong bài tập này, bạn sẽ ước tính khả năng giá trị tính đồng dạng quan sát được trong mạng bạn bè là do phân bố giới tính của các đỉnh, bằng cách thực hiện một quy trình ngẫu nhiên hóa. Bạn sẽ hoán vị ngẫu nhiên giới tính của các đỉnh trong mạng 1000 lần và tính lại tính đồng dạng cho mỗi mạng ngẫu nhiên.

Bài tập này là một phần của khóa học

Phân tích Mạng lưới trong R

Xem khóa học

Hướng dẫn bài tập

  • Dùng assortativity() để tính tính đồng dạng của đối tượng đồ thị g1 theo giới tính, dựa trên đối tượng values đã tính ở bài trước, và gán kết quả vào đối tượng observed.assortativity.
  • Bên trong vòng lặp for, tính tính đồng dạng của mạng g1 bằng assortativity() trong khi mỗi lần đều hoán vị ngẫu nhiên đối tượng values với sample().
  • Vẽ phân phối các giá trị tính đồng dạng từ quy trình hoán vị này bằng hist() và thêm một đường thẳng dọc màu đỏ cho giá trị tính đồng dạng quan sát được của mạng g1 ban đầu, đang được lưu trong observed.assortativity.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# 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)

Chỉnh sửa và Chạy Mã