The final week of each unit is designed to provide you some space for independent analysis. For this assignment, you are to demonstrate your ability to formulate a basic research question, wrangle and analyze relational data, and create a simple data product to illustrate key findings. Your primary goal for this analysis is to examine node or network characteristics that produce tie formation by applying the knowledge and skills acquired from the course readings and case study. Grading for this week is fairly lenient and you’ll receive 1 point (6 points total) for completing each of the following tasks:
I will be using the dlt1-edges and dlt1-nodes dataset.
Does years of experience predict participation in the discussion thread “Most Important Change for Your School or District?”
I hypothesize that those educators in the 6 to 10 years or 11 to 20 years experience brackets will be the most participatory in this discussion thread. In my experience, new teachers (less than 6 years of experience) are less likely to have ideas for change because they are still learning the nuances and power developments at play within a school and district. Likewise, teachers closest to retirement (20 years or more) are also less likely to have ideas for change because at this point, many have resigned themselves to the fact that things will never change, and they are counting down the days until they can collect a pension. (I know that’s bleak; it’s also true.)
library(readr)
dlt1_edges <- read_csv("data/dlt1-edges.csv")
## Rows: 2529 Columns: 10
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (7): Timestamp, Discussion Title, Discussion Category, Parent Category, ...
## dbl (3): Sender, Receiver, Comment ID
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
(dlt1_edges)
## # A tibble: 2,529 × 10
## Sender Receiver Timestamp `Discussion Ti…` `Discussion Ca…` `Parent Catego…`
## <dbl> <dbl> <chr> <chr> <chr> <chr>
## 1 360 444 4/4/13 16… Most important … Group N Units 1-3 Discu…
## 2 356 444 4/4/13 18… Most important … Group D-L Units 1-3 Discu…
## 3 356 444 4/4/13 18… DLT Resources—C… Group D-L Units 1-3 Discu…
## 4 344 444 4/4/13 18… Most important … Group O-T Units 1-3 Discu…
## 5 392 444 4/4/13 19… Most important … Group U-Z Units 1-3 Discu…
## 6 219 444 4/4/13 19… Most important … Group M Units 1-3 Discu…
## 7 318 444 4/4/13 19… Most important … Group M Units 1-3 Discu…
## 8 4 444 4/4/13 19… Most important … Group N Units 1-3 Discu…
## 9 355 356 4/4/13 20… DLT Resources—C… Group D-L Units 1-3 Discu…
## 10 355 444 4/4/13 20… Most important … Group D-L Units 1-3 Discu…
## # … with 2,519 more rows, and 4 more variables: `Category Text` <chr>,
## # `Discussion Identifier` <chr>, `Comment ID` <dbl>, `Discussion ID` <chr>
library(readr)
dlt1_nodes <- read_csv("data/dlt1-nodes.csv")
## Rows: 445 Columns: 13
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (10): role1, experience2, grades, location, region, country, group, gend...
## dbl (3): UID, Facilitator, experience
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
(dlt1_nodes)
## # A tibble: 445 × 13
## UID Facilitator role1 experience experience2 grades location region country
## <dbl> <dbl> <chr> <dbl> <chr> <chr> <chr> <chr> <chr>
## 1 1 0 libm… 1 6 to 10 secon… VA South US
## 2 2 0 clas… 1 6 to 10 secon… FL South US
## 3 3 0 dist… 2 11 to 20 gener… PA North… US
## 4 4 0 clas… 2 11 to 20 middle NC South US
## 5 5 0 othe… 3 20+ gener… AL South US
## 6 6 0 clas… 1 4 to 5 gener… AL South US
## 7 7 0 inst… 2 11 to 20 gener… SD Midwe… US
## 8 8 0 spec… 1 6 to 10 secon… BE Inter… BE
## 9 9 0 clas… 1 6 to 10 middle NC South US
## 10 10 0 scho… 2 11 to 20 middle NC South US
## # … with 435 more rows, and 4 more variables: group <chr>, gender <chr>,
## # expert <chr>, connect <chr>
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(igraph)
##
## Attaching package: 'igraph'
## The following objects are masked from 'package:dplyr':
##
## as_data_frame, groups, union
## The following objects are masked from 'package:stats':
##
## decompose, spectrum
## The following object is masked from 'package:base':
##
## union
library(tidygraph)
##
## Attaching package: 'tidygraph'
## The following object is masked from 'package:igraph':
##
## groups
## The following object is masked from 'package:stats':
##
## filter
library(statnet)
## Loading required package: tergm
## Loading required package: ergm
## Loading required package: network
##
## 'network' 1.17.1 (2021-06-12), part of the Statnet Project
## * 'news(package="network")' for changes since last version
## * 'citation("network")' for citation information
## * 'https://statnet.org' for help, support, and other information
##
## Attaching package: 'network'
## The following objects are masked from 'package:igraph':
##
## %c%, %s%, add.edges, add.vertices, delete.edges, delete.vertices,
## get.edge.attribute, get.edges, get.vertex.attribute, is.bipartite,
## is.directed, list.edge.attributes, list.vertex.attributes,
## set.edge.attribute, set.vertex.attribute
##
## 'ergm' 4.1.2 (2021-07-26), part of the Statnet Project
## * 'news(package="ergm")' for changes since last version
## * 'citation("ergm")' for citation information
## * 'https://statnet.org' for help, support, and other information
## 'ergm' 4 is a major update that introduces some backwards-incompatible
## changes. Please type 'news(package="ergm")' for a list of major
## changes.
## Loading required package: networkDynamic
##
## 'networkDynamic' 0.11.0 (2021-06-12), part of the Statnet Project
## * 'news(package="networkDynamic")' for changes since last version
## * 'citation("networkDynamic")' for citation information
## * 'https://statnet.org' for help, support, and other information
## Registered S3 method overwritten by 'tergm':
## method from
## simulate_formula.network ergm
##
## 'tergm' 4.0.2 (2021-07-28), part of the Statnet Project
## * 'news(package="tergm")' for changes since last version
## * 'citation("tergm")' for citation information
## * 'https://statnet.org' for help, support, and other information
##
## Attaching package: 'tergm'
## The following object is masked from 'package:ergm':
##
## snctrl
## Loading required package: ergm.count
##
## 'ergm.count' 4.0.2 (2021-06-18), part of the Statnet Project
## * 'news(package="ergm.count")' for changes since last version
## * 'citation("ergm.count")' for citation information
## * 'https://statnet.org' for help, support, and other information
## Loading required package: sna
## Loading required package: statnet.common
##
## Attaching package: 'statnet.common'
## The following object is masked from 'package:ergm':
##
## snctrl
## The following objects are masked from 'package:base':
##
## attr, order
## sna: Tools for Social Network Analysis
## Version 2.6 created on 2020-10-5.
## copyright (c) 2005, Carter T. Butts, University of California-Irvine
## For citation information, type citation("sna").
## Type help(package="sna") to get started.
##
## Attaching package: 'sna'
## The following objects are masked from 'package:igraph':
##
## betweenness, bonpow, closeness, components, degree, dyad.census,
## evcent, hierarchy, is.connected, neighborhood, triad.census
## Loading required package: tsna
##
## 'statnet' 2019.6 (2019-06-13), part of the Statnet Project
## * 'news(package="statnet")' for changes since last version
## * 'citation("statnet")' for citation information
## * 'https://statnet.org' for help, support, and other information
library(ggraph)
## Loading required package: ggplot2
Since I will only be looking at one discussion topic from the dlt1-edges document, I first need to select the appropriate columns and filter for those who participated in this discussion.
dlt1edges2 <- select(dlt1_edges, "Sender", "Receiver", "Discussion Title", "Discussion Identifier")
dlt1edges2
## # A tibble: 2,529 × 4
## Sender Receiver `Discussion Title` `Discussion Id…`
## <dbl> <dbl> <chr> <chr>
## 1 360 444 Most important change for your school or di… Most important …
## 2 356 444 Most important change for your school or di… Most important …
## 3 356 444 DLT Resources—Comments and Suggestions DLT Resources—C…
## 4 344 444 Most important change for your school or di… Most important …
## 5 392 444 Most important change for your school or di… Most important …
## 6 219 444 Most important change for your school or di… Most important …
## 7 318 444 Most important change for your school or di… Most important …
## 8 4 444 Most important change for your school or di… Most important …
## 9 355 356 DLT Resources—Comments and Suggestions DLT Resources—C…
## 10 355 444 Most important change for your school or di… Most important …
## # … with 2,519 more rows
colnames(dlt1edges2)[colnames(dlt1edges2) == "Discussion Title"] <- "Discussion_Title"
colnames(dlt1edges2)[colnames(dlt1edges2) == "Sender"] <- "UID"
dlt1edges2
## # A tibble: 2,529 × 4
## UID Receiver Discussion_Title `Discussion Id…`
## <dbl> <dbl> <chr> <chr>
## 1 360 444 Most important change for your school or dis… Most important …
## 2 356 444 Most important change for your school or dis… Most important …
## 3 356 444 DLT Resources—Comments and Suggestions DLT Resources—C…
## 4 344 444 Most important change for your school or dis… Most important …
## 5 392 444 Most important change for your school or dis… Most important …
## 6 219 444 Most important change for your school or dis… Most important …
## 7 318 444 Most important change for your school or dis… Most important …
## 8 4 444 Most important change for your school or dis… Most important …
## 9 355 356 DLT Resources—Comments and Suggestions DLT Resources—C…
## 10 355 444 Most important change for your school or dis… Most important …
## # … with 2,519 more rows
**Note: from this point on, the column “UID” within the edges dataset will represent the Sender. This is to ease joining in a step later on.
dlt1edges3 <- filter(dlt1edges2, Discussion_Title == "Most important change for your school or district?")
dlt1edges3
## # A tibble: 327 × 4
## UID Receiver Discussion_Title `Discussion Id…`
## <dbl> <dbl> <chr> <chr>
## 1 360 444 Most important change for your school or dis… Most important …
## 2 356 444 Most important change for your school or dis… Most important …
## 3 344 444 Most important change for your school or dis… Most important …
## 4 392 444 Most important change for your school or dis… Most important …
## 5 219 444 Most important change for your school or dis… Most important …
## 6 318 444 Most important change for your school or dis… Most important …
## 7 4 444 Most important change for your school or dis… Most important …
## 8 355 444 Most important change for your school or dis… Most important …
## 9 248 444 Most important change for your school or dis… Most important …
## 10 150 444 Most important change for your school or dis… Most important …
## # … with 317 more rows
class(dlt1edges3)
## [1] "tbl_df" "tbl" "data.frame"
dlt1edges4 <- select(dlt1edges3, "UID", "Receiver")
dlt1edges4
## # A tibble: 327 × 2
## UID Receiver
## <dbl> <dbl>
## 1 360 444
## 2 356 444
## 3 344 444
## 4 392 444
## 5 219 444
## 6 318 444
## 7 4 444
## 8 355 444
## 9 248 444
## 10 150 444
## # … with 317 more rows
dlt1nodes2 <- select(dlt1_nodes, "UID", "experience2")
dlt1nodes2
## # A tibble: 445 × 2
## UID experience2
## <dbl> <chr>
## 1 1 6 to 10
## 2 2 6 to 10
## 3 3 11 to 20
## 4 4 11 to 20
## 5 5 20+
## 6 6 4 to 5
## 7 7 11 to 20
## 8 8 6 to 10
## 9 9 6 to 10
## 10 10 11 to 20
## # … with 435 more rows
I decided to convert the original data scale, which combined years 0 to 10 into Level 1, into two separate experience levels. Based on my own experience in the classroom and working with other teachers, there is a significant difference between a teacher with 2 years of experience and a teacher with 9 years of experience, and I do not think it is appropriate to include this in one group. Therefore, I recoded the data so that Level 1 = 0 to 5 years and Level 2 = 6 to 10 years of experience.
dlt1nodeslevel2 <- filter(dlt1nodes2, experience2=="6 to 10")
dlt1nodeslevel2
## # A tibble: 68 × 2
## UID experience2
## <dbl> <chr>
## 1 1 6 to 10
## 2 2 6 to 10
## 3 8 6 to 10
## 4 9 6 to 10
## 5 22 6 to 10
## 6 32 6 to 10
## 7 38 6 to 10
## 8 41 6 to 10
## 9 63 6 to 10
## 10 70 6 to 10
## # … with 58 more rows
dlt1nodeslevel1 <- filter(dlt1nodes2, experience2=="0 to 3" | experience2=="4 to 5")
dlt1nodeslevel1
## # A tibble: 47 × 2
## UID experience2
## <dbl> <chr>
## 1 6 4 to 5
## 2 14 0 to 3
## 3 16 0 to 3
## 4 17 0 to 3
## 5 18 4 to 5
## 6 20 0 to 3
## 7 21 0 to 3
## 8 27 0 to 3
## 9 31 4 to 5
## 10 55 4 to 5
## # … with 37 more rows
dlt1nodeslevel3 <- filter(dlt1nodes2, experience2=="11 to 20")
dlt1nodeslevel3
## # A tibble: 150 × 2
## UID experience2
## <dbl> <chr>
## 1 3 11 to 20
## 2 4 11 to 20
## 3 7 11 to 20
## 4 10 11 to 20
## 5 13 11 to 20
## 6 24 11 to 20
## 7 25 11 to 20
## 8 29 11 to 20
## 9 35 11 to 20
## 10 36 11 to 20
## # … with 140 more rows
dlt1nodeslevel4 <- filter(dlt1nodes2, experience2=="20+")
dlt1nodeslevel4
## # A tibble: 179 × 2
## UID experience2
## <dbl> <chr>
## 1 5 20+
## 2 11 20+
## 3 12 20+
## 4 15 20+
## 5 19 20+
## 6 23 20+
## 7 26 20+
## 8 28 20+
## 9 30 20+
## 10 33 20+
## # … with 169 more rows
joined_datasets <- full_join(dlt1nodeslevel1, dlt1nodeslevel2)
## Joining, by = c("UID", "experience2")
joined_datasets
## # A tibble: 115 × 2
## UID experience2
## <dbl> <chr>
## 1 6 4 to 5
## 2 14 0 to 3
## 3 16 0 to 3
## 4 17 0 to 3
## 5 18 4 to 5
## 6 20 0 to 3
## 7 21 0 to 3
## 8 27 0 to 3
## 9 31 4 to 5
## 10 55 4 to 5
## # … with 105 more rows
joined_datasets <- full_join(joined_datasets, dlt1nodeslevel3)
## Joining, by = c("UID", "experience2")
joined_datasets
## # A tibble: 265 × 2
## UID experience2
## <dbl> <chr>
## 1 6 4 to 5
## 2 14 0 to 3
## 3 16 0 to 3
## 4 17 0 to 3
## 5 18 4 to 5
## 6 20 0 to 3
## 7 21 0 to 3
## 8 27 0 to 3
## 9 31 4 to 5
## 10 55 4 to 5
## # … with 255 more rows
joined_datasets <- full_join(joined_datasets, dlt1nodeslevel4)
## Joining, by = c("UID", "experience2")
joined_datasets
## # A tibble: 444 × 2
## UID experience2
## <dbl> <chr>
## 1 6 4 to 5
## 2 14 0 to 3
## 3 16 0 to 3
## 4 17 0 to 3
## 5 18 4 to 5
## 6 20 0 to 3
## 7 21 0 to 3
## 8 27 0 to 3
## 9 31 4 to 5
## 10 55 4 to 5
## # … with 434 more rows
discussion_edges_list <- inner_join(joined_datasets, dlt1edges4)
## Joining, by = "UID"
discussion_edges_list
## # A tibble: 327 × 3
## UID experience2 Receiver
## <dbl> <chr> <dbl>
## 1 14 0 to 3 193
## 2 17 0 to 3 444
## 3 18 4 to 5 444
## 4 27 0 to 3 66
## 5 27 0 to 3 356
## 6 59 0 to 3 444
## 7 62 0 to 3 444
## 8 79 4 to 5 88
## 9 88 0 to 3 444
## 10 110 4 to 5 444
## # … with 317 more rows
discussion_edges_list2 <- discussion_edges_list |>
mutate(experience_level = case_when(experience2 == "0 to 3" ~ 1,
experience2 == "4 to 5" ~ 1,
experience2 == "6 to 10" ~ 2,
experience2 == "11 to 20" ~ 3,
experience2 == "20+" ~ 4))
discussion_edges_list2
## # A tibble: 327 × 4
## UID experience2 Receiver experience_level
## <dbl> <chr> <dbl> <dbl>
## 1 14 0 to 3 193 1
## 2 17 0 to 3 444 1
## 3 18 4 to 5 444 1
## 4 27 0 to 3 66 1
## 5 27 0 to 3 356 1
## 6 59 0 to 3 444 1
## 7 62 0 to 3 444 1
## 8 79 4 to 5 88 1
## 9 88 0 to 3 444 1
## 10 110 4 to 5 444 1
## # … with 317 more rows
discussion_edges_list2 <- select(discussion_edges_list2, "UID", "Receiver", "experience_level")
discussion_edges_list2
## # A tibble: 327 × 3
## UID Receiver experience_level
## <dbl> <dbl> <dbl>
## 1 14 193 1
## 2 17 444 1
## 3 18 444 1
## 4 27 66 1
## 5 27 356 1
## 6 59 444 1
## 7 62 444 1
## 8 79 88 1
## 9 88 444 1
## 10 110 444 1
## # … with 317 more rows
We now have a dataset containing just the 327 threads in the “Most important change” discussion. In order to create a node list for this discussion, without any duplicates, we will need to extract the appropriate data using the select() function to create a dataset with only information about the senders and then filtering out duplicates. In order to do this, we will use the distinct() function.
discussion_node_list <- discussion_edges_list2 |>
select(UID, experience_level) |>
distinct()
discussion_node_list
## # A tibble: 246 × 2
## UID experience_level
## <dbl> <dbl>
## 1 14 1
## 2 17 1
## 3 18 1
## 4 27 1
## 5 59 1
## 6 62 1
## 7 79 1
## 8 88 1
## 9 110 1
## 10 157 1
## # … with 236 more rows
From this, we see that there are 246 unique participants (i.e. Senders) in the “Most important change” discussion.
node_matrix <- discussion_node_list |>
as.matrix()
node_matrix
## UID experience_level
## [1,] 14 1
## [2,] 17 1
## [3,] 18 1
## [4,] 27 1
## [5,] 59 1
## [6,] 62 1
## [7,] 79 1
## [8,] 88 1
## [9,] 110 1
## [10,] 157 1
## [11,] 163 1
## [12,] 196 1
## [13,] 205 1
## [14,] 241 1
## [15,] 242 1
## [16,] 245 1
## [17,] 248 1
## [18,] 288 1
## [19,] 309 1
## [20,] 343 1
## [21,] 360 1
## [22,] 367 1
## [23,] 397 1
## [24,] 405 1
## [25,] 1 2
## [26,] 8 2
## [27,] 22 2
## [28,] 63 2
## [29,] 82 2
## [30,] 94 2
## [31,] 118 2
## [32,] 128 2
## [33,] 132 2
## [34,] 134 2
## [35,] 149 2
## [36,] 150 2
## [37,] 170 2
## [38,] 181 2
## [39,] 201 2
## [40,] 214 2
## [41,] 218 2
## [42,] 221 2
## [43,] 240 2
## [44,] 243 2
## [45,] 266 2
## [46,] 284 2
## [47,] 295 2
## [48,] 304 2
## [49,] 322 2
## [50,] 333 2
## [51,] 346 2
## [52,] 373 2
## [53,] 378 2
## [54,] 390 2
## [55,] 394 2
## [56,] 398 2
## [57,] 404 2
## [58,] 4 3
## [59,] 7 3
## [60,] 24 3
## [61,] 25 3
## [62,] 35 3
## [63,] 36 3
## [64,] 39 3
## [65,] 44 3
## [66,] 45 3
## [67,] 54 3
## [68,] 60 3
## [69,] 64 3
## [70,] 65 3
## [71,] 66 3
## [72,] 72 3
## [73,] 87 3
## [74,] 91 3
## [75,] 96 3
## [76,] 98 3
## [77,] 103 3
## [78,] 105 3
## [79,] 107 3
## [80,] 115 3
## [81,] 121 3
## [82,] 123 3
## [83,] 126 3
## [84,] 127 3
## [85,] 129 3
## [86,] 131 3
## [87,] 138 3
## [88,] 139 3
## [89,] 142 3
## [90,] 143 3
## [91,] 144 3
## [92,] 147 3
## [93,] 151 3
## [94,] 152 3
## [95,] 159 3
## [96,] 164 3
## [97,] 171 3
## [98,] 172 3
## [99,] 173 3
## [100,] 176 3
## [101,] 178 3
## [102,] 179 3
## [103,] 183 3
## [104,] 185 3
## [105,] 193 3
## [106,] 198 3
## [107,] 200 3
## [108,] 202 3
## [109,] 204 3
## [110,] 206 3
## [111,] 213 3
## [112,] 223 3
## [113,] 235 3
## [114,] 247 3
## [115,] 249 3
## [116,] 255 3
## [117,] 261 3
## [118,] 271 3
## [119,] 283 3
## [120,] 300 3
## [121,] 301 3
## [122,] 314 3
## [123,] 318 3
## [124,] 319 3
## [125,] 329 3
## [126,] 331 3
## [127,] 347 3
## [128,] 350 3
## [129,] 354 3
## [130,] 355 3
## [131,] 356 3
## [132,] 362 3
## [133,] 365 3
## [134,] 366 3
## [135,] 368 3
## [136,] 371 3
## [137,] 374 3
## [138,] 376 3
## [139,] 377 3
## [140,] 379 3
## [141,] 381 3
## [142,] 382 3
## [143,] 386 3
## [144,] 388 3
## [145,] 393 3
## [146,] 395 3
## [147,] 396 3
## [148,] 399 3
## [149,] 401 3
## [150,] 402 3
## [151,] 406 3
## [152,] 414 3
## [153,] 416 3
## [154,] 5 4
## [155,] 11 4
## [156,] 15 4
## [157,] 19 4
## [158,] 30 4
## [159,] 49 4
## [160,] 50 4
## [161,] 61 4
## [162,] 69 4
## [163,] 71 4
## [164,] 75 4
## [165,] 78 4
## [166,] 81 4
## [167,] 83 4
## [168,] 89 4
## [169,] 90 4
## [170,] 102 4
## [171,] 104 4
## [172,] 109 4
## [173,] 120 4
## [174,] 133 4
## [175,] 136 4
## [176,] 137 4
## [177,] 141 4
## [178,] 154 4
## [179,] 156 4
## [180,] 158 4
## [181,] 160 4
## [182,] 165 4
## [183,] 167 4
## [184,] 169 4
## [185,] 188 4
## [186,] 192 4
## [187,] 194 4
## [188,] 195 4
## [189,] 203 4
## [190,] 217 4
## [191,] 219 4
## [192,] 226 4
## [193,] 230 4
## [194,] 232 4
## [195,] 246 4
## [196,] 253 4
## [197,] 254 4
## [198,] 256 4
## [199,] 258 4
## [200,] 260 4
## [201,] 265 4
## [202,] 276 4
## [203,] 279 4
## [204,] 280 4
## [205,] 281 4
## [206,] 296 4
## [207,] 297 4
## [208,] 298 4
## [209,] 299 4
## [210,] 302 4
## [211,] 303 4
## [212,] 305 4
## [213,] 317 4
## [214,] 320 4
## [215,] 330 4
## [216,] 335 4
## [217,] 337 4
## [218,] 338 4
## [219,] 339 4
## [220,] 340 4
## [221,] 342 4
## [222,] 344 4
## [223,] 345 4
## [224,] 357 4
## [225,] 358 4
## [226,] 361 4
## [227,] 363 4
## [228,] 364 4
## [229,] 369 4
## [230,] 370 4
## [231,] 372 4
## [232,] 375 4
## [233,] 380 4
## [234,] 383 4
## [235,] 385 4
## [236,] 387 4
## [237,] 389 4
## [238,] 391 4
## [239,] 392 4
## [240,] 400 4
## [241,] 403 4
## [242,] 407 4
## [243,] 408 4
## [244,] 415 4
## [245,] 444 4
## [246,] 445 4
class(node_matrix)
## [1] "matrix" "array"
discussion_edges_list2
## # A tibble: 327 × 3
## UID Receiver experience_level
## <dbl> <dbl> <dbl>
## 1 14 193 1
## 2 17 444 1
## 3 18 444 1
## 4 27 66 1
## 5 27 356 1
## 6 59 444 1
## 7 62 444 1
## 8 79 88 1
## 9 88 444 1
## 10 110 444 1
## # … with 317 more rows
edges_matrix <- discussion_edges_list2 |>
select("UID", "Receiver") |>
as.matrix()
edges_matrix
## UID Receiver
## [1,] 14 193
## [2,] 17 444
## [3,] 18 444
## [4,] 27 66
## [5,] 27 356
## [6,] 59 444
## [7,] 62 444
## [8,] 79 88
## [9,] 88 444
## [10,] 110 444
## [11,] 157 444
## [12,] 163 444
## [13,] 196 444
## [14,] 205 206
## [15,] 241 444
## [16,] 242 444
## [17,] 245 444
## [18,] 248 444
## [19,] 288 342
## [20,] 309 54
## [21,] 343 444
## [22,] 360 444
## [23,] 367 444
## [24,] 397 444
## [25,] 405 444
## [26,] 1 444
## [27,] 1 144
## [28,] 1 198
## [29,] 8 444
## [30,] 22 444
## [31,] 63 444
## [32,] 63 444
## [33,] 82 444
## [34,] 94 444
## [35,] 118 340
## [36,] 128 444
## [37,] 132 219
## [38,] 134 444
## [39,] 149 150
## [40,] 150 444
## [41,] 150 444
## [42,] 170 444
## [43,] 181 444
## [44,] 201 444
## [45,] 214 444
## [46,] 218 15
## [47,] 221 444
## [48,] 240 444
## [49,] 243 444
## [50,] 266 346
## [51,] 284 444
## [52,] 295 444
## [53,] 304 444
## [54,] 322 444
## [55,] 333 444
## [56,] 346 444
## [57,] 373 444
## [58,] 378 444
## [59,] 390 444
## [60,] 394 444
## [61,] 398 444
## [62,] 404 444
## [63,] 4 444
## [64,] 7 444
## [65,] 24 444
## [66,] 25 444
## [67,] 35 444
## [68,] 36 305
## [69,] 36 345
## [70,] 39 444
## [71,] 44 444
## [72,] 45 444
## [73,] 54 444
## [74,] 54 15
## [75,] 54 152
## [76,] 54 138
## [77,] 54 339
## [78,] 54 444
## [79,] 60 358
## [80,] 64 444
## [81,] 65 444
## [82,] 66 356
## [83,] 66 444
## [84,] 72 444
## [85,] 87 444
## [86,] 87 444
## [87,] 91 444
## [88,] 91 219
## [89,] 96 342
## [90,] 96 295
## [91,] 96 444
## [92,] 98 444
## [93,] 103 444
## [94,] 105 444
## [95,] 107 444
## [96,] 107 105
## [97,] 107 193
## [98,] 115 444
## [99,] 121 345
## [100,] 123 151
## [101,] 126 444
## [102,] 127 444
## [103,] 129 444
## [104,] 131 444
## [105,] 138 444
## [106,] 138 54
## [107,] 138 300
## [108,] 139 444
## [109,] 139 15
## [110,] 139 138
## [111,] 142 295
## [112,] 143 444
## [113,] 144 444
## [114,] 147 444
## [115,] 151 150
## [116,] 152 444
## [117,] 159 158
## [118,] 159 218
## [119,] 164 103
## [120,] 171 444
## [121,] 172 444
## [122,] 172 444
## [123,] 173 444
## [124,] 173 342
## [125,] 176 444
## [126,] 178 444
## [127,] 178 219
## [128,] 178 254
## [129,] 179 444
## [130,] 183 219
## [131,] 185 54
## [132,] 185 444
## [133,] 193 195
## [134,] 193 444
## [135,] 193 444
## [136,] 198 152
## [137,] 200 444
## [138,] 202 301
## [139,] 202 1
## [140,] 204 444
## [141,] 206 444
## [142,] 206 329
## [143,] 213 60
## [144,] 223 444
## [145,] 235 444
## [146,] 247 444
## [147,] 249 444
## [148,] 249 444
## [149,] 255 444
## [150,] 255 256
## [151,] 261 444
## [152,] 271 444
## [153,] 283 284
## [154,] 300 444
## [155,] 301 444
## [156,] 314 444
## [157,] 318 444
## [158,] 318 444
## [159,] 319 218
## [160,] 329 444
## [161,] 329 444
## [162,] 329 205
## [163,] 331 444
## [164,] 347 444
## [165,] 350 444
## [166,] 354 444
## [167,] 355 444
## [168,] 355 444
## [169,] 356 444
## [170,] 362 444
## [171,] 365 444
## [172,] 366 444
## [173,] 366 444
## [174,] 368 444
## [175,] 371 444
## [176,] 374 444
## [177,] 376 444
## [178,] 376 444
## [179,] 377 444
## [180,] 379 444
## [181,] 381 444
## [182,] 382 444
## [183,] 386 444
## [184,] 388 444
## [185,] 393 444
## [186,] 395 444
## [187,] 396 444
## [188,] 399 444
## [189,] 401 444
## [190,] 402 444
## [191,] 406 444
## [192,] 414 444
## [193,] 416 445
## [194,] 5 444
## [195,] 11 444
## [196,] 11 444
## [197,] 15 444
## [198,] 19 444
## [199,] 19 219
## [200,] 30 444
## [201,] 30 444
## [202,] 30 444
## [203,] 30 444
## [204,] 49 318
## [205,] 49 156
## [206,] 49 444
## [207,] 50 301
## [208,] 61 444
## [209,] 69 444
## [210,] 71 444
## [211,] 71 445
## [212,] 71 72
## [213,] 75 444
## [214,] 78 444
## [215,] 81 71
## [216,] 81 444
## [217,] 83 444
## [218,] 89 88
## [219,] 90 444
## [220,] 102 444
## [221,] 104 256
## [222,] 109 444
## [223,] 120 444
## [224,] 133 444
## [225,] 136 444
## [226,] 137 444
## [227,] 141 444
## [228,] 154 301
## [229,] 154 444
## [230,] 156 219
## [231,] 158 444
## [232,] 158 152
## [233,] 158 444
## [234,] 160 444
## [235,] 165 444
## [236,] 167 444
## [237,] 169 444
## [238,] 188 444
## [239,] 192 444
## [240,] 194 444
## [241,] 195 444
## [242,] 203 444
## [243,] 217 444
## [244,] 219 444
## [245,] 219 19
## [246,] 219 253
## [247,] 219 444
## [248,] 219 281
## [249,] 219 338
## [250,] 219 178
## [251,] 219 329
## [252,] 226 444
## [253,] 230 344
## [254,] 232 444
## [255,] 246 444
## [256,] 253 444
## [257,] 254 249
## [258,] 256 219
## [259,] 256 281
## [260,] 258 444
## [261,] 258 444
## [262,] 260 261
## [263,] 265 444
## [264,] 276 444
## [265,] 279 444
## [266,] 280 219
## [267,] 280 444
## [268,] 280 444
## [269,] 281 219
## [270,] 296 295
## [271,] 297 444
## [272,] 298 444
## [273,] 299 444
## [274,] 302 444
## [275,] 302 444
## [276,] 303 444
## [277,] 305 444
## [278,] 317 444
## [279,] 320 176
## [280,] 320 444
## [281,] 330 444
## [282,] 335 444
## [283,] 337 444
## [284,] 338 444
## [285,] 338 444
## [286,] 338 444
## [287,] 339 444
## [288,] 340 343
## [289,] 340 444
## [290,] 342 444
## [291,] 344 444
## [292,] 345 444
## [293,] 357 444
## [294,] 358 444
## [295,] 361 193
## [296,] 361 105
## [297,] 363 444
## [298,] 364 444
## [299,] 369 444
## [300,] 370 69
## [301,] 372 444
## [302,] 375 444
## [303,] 380 444
## [304,] 383 444
## [305,] 385 444
## [306,] 387 444
## [307,] 389 444
## [308,] 391 444
## [309,] 392 444
## [310,] 400 444
## [311,] 403 444
## [312,] 407 444
## [313,] 408 444
## [314,] 415 444
## [315,] 444 256
## [316,] 444 253
## [317,] 444 444
## [318,] 444 141
## [319,] 444 444
## [320,] 445 318
## [321,] 445 301
## [322,] 445 444
## [323,] 445 444
## [324,] 445 444
## [325,] 445 444
## [326,] 445 444
## [327,] 445 136
class(edges_matrix)
## [1] "matrix" "array"
library(tidygraph)
transform(discussion_edges_list2, experience_level = as.numeric(experience_level))
## UID Receiver experience_level
## 1 14 193 1
## 2 17 444 1
## 3 18 444 1
## 4 27 66 1
## 5 27 356 1
## 6 59 444 1
## 7 62 444 1
## 8 79 88 1
## 9 88 444 1
## 10 110 444 1
## 11 157 444 1
## 12 163 444 1
## 13 196 444 1
## 14 205 206 1
## 15 241 444 1
## 16 242 444 1
## 17 245 444 1
## 18 248 444 1
## 19 288 342 1
## 20 309 54 1
## 21 343 444 1
## 22 360 444 1
## 23 367 444 1
## 24 397 444 1
## 25 405 444 1
## 26 1 444 2
## 27 1 144 2
## 28 1 198 2
## 29 8 444 2
## 30 22 444 2
## 31 63 444 2
## 32 63 444 2
## 33 82 444 2
## 34 94 444 2
## 35 118 340 2
## 36 128 444 2
## 37 132 219 2
## 38 134 444 2
## 39 149 150 2
## 40 150 444 2
## 41 150 444 2
## 42 170 444 2
## 43 181 444 2
## 44 201 444 2
## 45 214 444 2
## 46 218 15 2
## 47 221 444 2
## 48 240 444 2
## 49 243 444 2
## 50 266 346 2
## 51 284 444 2
## 52 295 444 2
## 53 304 444 2
## 54 322 444 2
## 55 333 444 2
## 56 346 444 2
## 57 373 444 2
## 58 378 444 2
## 59 390 444 2
## 60 394 444 2
## 61 398 444 2
## 62 404 444 2
## 63 4 444 3
## 64 7 444 3
## 65 24 444 3
## 66 25 444 3
## 67 35 444 3
## 68 36 305 3
## 69 36 345 3
## 70 39 444 3
## 71 44 444 3
## 72 45 444 3
## 73 54 444 3
## 74 54 15 3
## 75 54 152 3
## 76 54 138 3
## 77 54 339 3
## 78 54 444 3
## 79 60 358 3
## 80 64 444 3
## 81 65 444 3
## 82 66 356 3
## 83 66 444 3
## 84 72 444 3
## 85 87 444 3
## 86 87 444 3
## 87 91 444 3
## 88 91 219 3
## 89 96 342 3
## 90 96 295 3
## 91 96 444 3
## 92 98 444 3
## 93 103 444 3
## 94 105 444 3
## 95 107 444 3
## 96 107 105 3
## 97 107 193 3
## 98 115 444 3
## 99 121 345 3
## 100 123 151 3
## 101 126 444 3
## 102 127 444 3
## 103 129 444 3
## 104 131 444 3
## 105 138 444 3
## 106 138 54 3
## 107 138 300 3
## 108 139 444 3
## 109 139 15 3
## 110 139 138 3
## 111 142 295 3
## 112 143 444 3
## 113 144 444 3
## 114 147 444 3
## 115 151 150 3
## 116 152 444 3
## 117 159 158 3
## 118 159 218 3
## 119 164 103 3
## 120 171 444 3
## 121 172 444 3
## 122 172 444 3
## 123 173 444 3
## 124 173 342 3
## 125 176 444 3
## 126 178 444 3
## 127 178 219 3
## 128 178 254 3
## 129 179 444 3
## 130 183 219 3
## 131 185 54 3
## 132 185 444 3
## 133 193 195 3
## 134 193 444 3
## 135 193 444 3
## 136 198 152 3
## 137 200 444 3
## 138 202 301 3
## 139 202 1 3
## 140 204 444 3
## 141 206 444 3
## 142 206 329 3
## 143 213 60 3
## 144 223 444 3
## 145 235 444 3
## 146 247 444 3
## 147 249 444 3
## 148 249 444 3
## 149 255 444 3
## 150 255 256 3
## 151 261 444 3
## 152 271 444 3
## 153 283 284 3
## 154 300 444 3
## 155 301 444 3
## 156 314 444 3
## 157 318 444 3
## 158 318 444 3
## 159 319 218 3
## 160 329 444 3
## 161 329 444 3
## 162 329 205 3
## 163 331 444 3
## 164 347 444 3
## 165 350 444 3
## 166 354 444 3
## 167 355 444 3
## 168 355 444 3
## 169 356 444 3
## 170 362 444 3
## 171 365 444 3
## 172 366 444 3
## 173 366 444 3
## 174 368 444 3
## 175 371 444 3
## 176 374 444 3
## 177 376 444 3
## 178 376 444 3
## 179 377 444 3
## 180 379 444 3
## 181 381 444 3
## 182 382 444 3
## 183 386 444 3
## 184 388 444 3
## 185 393 444 3
## 186 395 444 3
## 187 396 444 3
## 188 399 444 3
## 189 401 444 3
## 190 402 444 3
## 191 406 444 3
## 192 414 444 3
## 193 416 445 3
## 194 5 444 4
## 195 11 444 4
## 196 11 444 4
## 197 15 444 4
## 198 19 444 4
## 199 19 219 4
## 200 30 444 4
## 201 30 444 4
## 202 30 444 4
## 203 30 444 4
## 204 49 318 4
## 205 49 156 4
## 206 49 444 4
## 207 50 301 4
## 208 61 444 4
## 209 69 444 4
## 210 71 444 4
## 211 71 445 4
## 212 71 72 4
## 213 75 444 4
## 214 78 444 4
## 215 81 71 4
## 216 81 444 4
## 217 83 444 4
## 218 89 88 4
## 219 90 444 4
## 220 102 444 4
## 221 104 256 4
## 222 109 444 4
## 223 120 444 4
## 224 133 444 4
## 225 136 444 4
## 226 137 444 4
## 227 141 444 4
## 228 154 301 4
## 229 154 444 4
## 230 156 219 4
## 231 158 444 4
## 232 158 152 4
## 233 158 444 4
## 234 160 444 4
## 235 165 444 4
## 236 167 444 4
## 237 169 444 4
## 238 188 444 4
## 239 192 444 4
## 240 194 444 4
## 241 195 444 4
## 242 203 444 4
## 243 217 444 4
## 244 219 444 4
## 245 219 19 4
## 246 219 253 4
## 247 219 444 4
## 248 219 281 4
## 249 219 338 4
## 250 219 178 4
## 251 219 329 4
## 252 226 444 4
## 253 230 344 4
## 254 232 444 4
## 255 246 444 4
## 256 253 444 4
## 257 254 249 4
## 258 256 219 4
## 259 256 281 4
## 260 258 444 4
## 261 258 444 4
## 262 260 261 4
## 263 265 444 4
## 264 276 444 4
## 265 279 444 4
## 266 280 219 4
## 267 280 444 4
## 268 280 444 4
## 269 281 219 4
## 270 296 295 4
## 271 297 444 4
## 272 298 444 4
## 273 299 444 4
## 274 302 444 4
## 275 302 444 4
## 276 303 444 4
## 277 305 444 4
## 278 317 444 4
## 279 320 176 4
## 280 320 444 4
## 281 330 444 4
## 282 335 444 4
## 283 337 444 4
## 284 338 444 4
## 285 338 444 4
## 286 338 444 4
## 287 339 444 4
## 288 340 343 4
## 289 340 444 4
## 290 342 444 4
## 291 344 444 4
## 292 345 444 4
## 293 357 444 4
## 294 358 444 4
## 295 361 193 4
## 296 361 105 4
## 297 363 444 4
## 298 364 444 4
## 299 369 444 4
## 300 370 69 4
## 301 372 444 4
## 302 375 444 4
## 303 380 444 4
## 304 383 444 4
## 305 385 444 4
## 306 387 444 4
## 307 389 444 4
## 308 391 444 4
## 309 392 444 4
## 310 400 444 4
## 311 403 444 4
## 312 407 444 4
## 313 408 444 4
## 314 415 444 4
## 315 444 256 4
## 316 444 253 4
## 317 444 444 4
## 318 444 141 4
## 319 444 444 4
## 320 445 318 4
## 321 445 301 4
## 322 445 444 4
## 323 445 444 4
## 324 445 444 4
## 325 445 444 4
## 326 445 444 4
## 327 445 136 4
transform(discussion_node_list, experience_level = as.numeric(experience_level))
## UID experience_level
## 1 14 1
## 2 17 1
## 3 18 1
## 4 27 1
## 5 59 1
## 6 62 1
## 7 79 1
## 8 88 1
## 9 110 1
## 10 157 1
## 11 163 1
## 12 196 1
## 13 205 1
## 14 241 1
## 15 242 1
## 16 245 1
## 17 248 1
## 18 288 1
## 19 309 1
## 20 343 1
## 21 360 1
## 22 367 1
## 23 397 1
## 24 405 1
## 25 1 2
## 26 8 2
## 27 22 2
## 28 63 2
## 29 82 2
## 30 94 2
## 31 118 2
## 32 128 2
## 33 132 2
## 34 134 2
## 35 149 2
## 36 150 2
## 37 170 2
## 38 181 2
## 39 201 2
## 40 214 2
## 41 218 2
## 42 221 2
## 43 240 2
## 44 243 2
## 45 266 2
## 46 284 2
## 47 295 2
## 48 304 2
## 49 322 2
## 50 333 2
## 51 346 2
## 52 373 2
## 53 378 2
## 54 390 2
## 55 394 2
## 56 398 2
## 57 404 2
## 58 4 3
## 59 7 3
## 60 24 3
## 61 25 3
## 62 35 3
## 63 36 3
## 64 39 3
## 65 44 3
## 66 45 3
## 67 54 3
## 68 60 3
## 69 64 3
## 70 65 3
## 71 66 3
## 72 72 3
## 73 87 3
## 74 91 3
## 75 96 3
## 76 98 3
## 77 103 3
## 78 105 3
## 79 107 3
## 80 115 3
## 81 121 3
## 82 123 3
## 83 126 3
## 84 127 3
## 85 129 3
## 86 131 3
## 87 138 3
## 88 139 3
## 89 142 3
## 90 143 3
## 91 144 3
## 92 147 3
## 93 151 3
## 94 152 3
## 95 159 3
## 96 164 3
## 97 171 3
## 98 172 3
## 99 173 3
## 100 176 3
## 101 178 3
## 102 179 3
## 103 183 3
## 104 185 3
## 105 193 3
## 106 198 3
## 107 200 3
## 108 202 3
## 109 204 3
## 110 206 3
## 111 213 3
## 112 223 3
## 113 235 3
## 114 247 3
## 115 249 3
## 116 255 3
## 117 261 3
## 118 271 3
## 119 283 3
## 120 300 3
## 121 301 3
## 122 314 3
## 123 318 3
## 124 319 3
## 125 329 3
## 126 331 3
## 127 347 3
## 128 350 3
## 129 354 3
## 130 355 3
## 131 356 3
## 132 362 3
## 133 365 3
## 134 366 3
## 135 368 3
## 136 371 3
## 137 374 3
## 138 376 3
## 139 377 3
## 140 379 3
## 141 381 3
## 142 382 3
## 143 386 3
## 144 388 3
## 145 393 3
## 146 395 3
## 147 396 3
## 148 399 3
## 149 401 3
## 150 402 3
## 151 406 3
## 152 414 3
## 153 416 3
## 154 5 4
## 155 11 4
## 156 15 4
## 157 19 4
## 158 30 4
## 159 49 4
## 160 50 4
## 161 61 4
## 162 69 4
## 163 71 4
## 164 75 4
## 165 78 4
## 166 81 4
## 167 83 4
## 168 89 4
## 169 90 4
## 170 102 4
## 171 104 4
## 172 109 4
## 173 120 4
## 174 133 4
## 175 136 4
## 176 137 4
## 177 141 4
## 178 154 4
## 179 156 4
## 180 158 4
## 181 160 4
## 182 165 4
## 183 167 4
## 184 169 4
## 185 188 4
## 186 192 4
## 187 194 4
## 188 195 4
## 189 203 4
## 190 217 4
## 191 219 4
## 192 226 4
## 193 230 4
## 194 232 4
## 195 246 4
## 196 253 4
## 197 254 4
## 198 256 4
## 199 258 4
## 200 260 4
## 201 265 4
## 202 276 4
## 203 279 4
## 204 280 4
## 205 281 4
## 206 296 4
## 207 297 4
## 208 298 4
## 209 299 4
## 210 302 4
## 211 303 4
## 212 305 4
## 213 317 4
## 214 320 4
## 215 330 4
## 216 335 4
## 217 337 4
## 218 338 4
## 219 339 4
## 220 340 4
## 221 342 4
## 222 344 4
## 223 345 4
## 224 357 4
## 225 358 4
## 226 361 4
## 227 363 4
## 228 364 4
## 229 369 4
## 230 370 4
## 231 372 4
## 232 375 4
## 233 380 4
## 234 383 4
## 235 385 4
## 236 387 4
## 237 389 4
## 238 391 4
## 239 392 4
## 240 400 4
## 241 403 4
## 242 407 4
## 243 408 4
## 244 415 4
## 245 444 4
## 246 445 4
discussion_graph <- graph_from_data_frame(discussion_edges_list2, vertices = discussion_node_list) |> as_tbl_graph()
discussion_graph
## # A tbl_graph: 246 nodes and 327 edges
## #
## # A directed multigraph with 1 component
## #
## # Node Data: 246 × 2 (active)
## name experience_level
## <chr> <dbl>
## 1 14 1
## 2 17 1
## 3 18 1
## 4 27 1
## 5 59 1
## 6 62 1
## # … with 240 more rows
## #
## # Edge Data: 327 × 3
## from to experience_level
## <int> <int> <dbl>
## 1 1 105 1
## 2 2 245 1
## 3 3 245 1
## # … with 324 more rows
discussion_graph |>
ggraph(layout = "star") +
geom_node_point(aes(color = "Sender")) +
geom_edge_link() +
theme_dark() +
labs(title = "Most Important Change Network")
As the sociogram above demonstrates, nearly all of the ties in the “Most important change” discussion were sent to UID 444, who was a facilitator. This created the dark cloud on the right side of the sociogram. Few exchanges occurred between students in the class.
In order to complete the ERGM analysis, I have to convert my data matrices to dichotomized matricies since ERGM does not accept valued data. Therefore, I will use the matrices that I created in the “Wrangle” section and dichotomize them.
discussion_network <- as.network(discussion_edges_list2,
vertices = discussion_node_list, directed=TRUE, loops=TRUE, multiple=TRUE)
discussion_network
## Network attributes:
## vertices = 246
## directed = TRUE
## hyper = FALSE
## loops = TRUE
## multiple = TRUE
## bipartite = FALSE
## total edges= 327
## missing edges= 0
## non-missing edges= 327
##
## Vertex attribute names:
## experience_level vertex.names
##
## Edge attribute names:
## experience_level
ergm_1 <- ergm(discussion_network ~ edges +
nodefactor('experience_level'))
## [1] "Warning: This network contains loops"
## Starting maximum pseudolikelihood estimation (MPLE):
## Evaluating the predictor and response matrix.
## Maximizing the pseudolikelihood.
## Finished MPLE.
## Stopping at the initial estimate.
## Evaluating log-likelihood at the estimate.
summary(ergm_1)
## Call:
## ergm(formula = discussion_network ~ edges + nodefactor("experience_level"))
##
## Maximum Likelihood Results:
##
## Estimate Std. Error MCMC % z value Pr(>|z|)
## edges -6.7098 0.3675 0 -18.260 <1e-04 ***
## nodefactor.experience_level.2 0.1213 0.2385 0 0.509 0.611
## nodefactor.experience_level.3 0.3037 0.2024 0 1.500 0.134
## nodefactor.experience_level.4 1.1905 0.1933 0 6.159 <1e-04 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Null Deviance: 83893 on 60516 degrees of freedom
## Residual Deviance: 3633 on 60512 degrees of freedom
##
## AIC: 3641 BIC: 3677 (Smaller is better. MC Std. Err. = 0)
After running my analysis, the ERGM indicates that experience level does serve as a significant predictor of participation in the “Most important change” discussion thread. However, contrary to my prediction, it was actually experience level 4 that had the most significant predictive power (1.1905).
My key takeaways from completing this analysis were that there was little exchange in between students within this discussion thread. As the sociogram demonstrates, the overwhelming percentage of exchanges are sent to the facilitator. There are a few ties sent to other students, but the network as a whole is very directed towards one user—444.
If I were to continue this analysis, I would be interested to see if the same themes emerged with the data in the other discussion threads. Additionally, since there are timestamps associated with the ties, it would be interesting to see if students began to interact with one another more as the semester progressed. Finally, I would like to see if the predictive power of experience level proved true for either discussion thread and for the network as a whole.
Carolan, B. V. (2014). Network data and statistical models. In Social network analysis and education: Theory, methods & applications (pp. 185-212). SAGE Publications, Inc., https://dx.doi.org/10.4135/9781452270104