This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see http://rmarkdown.rstudio.com.
When you click the Knit button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:
library(igraph)
##
## Attaching package: 'igraph'
## The following objects are masked from 'package:stats':
##
## decompose, spectrum
## The following object is masked from 'package:base':
##
## union
g5 <- graph_from_literal( Mom-Dad,
Mom-Karla:Martin:Kristina:Carlos:Josie:Elizabeth)
plot(g5)
A fitness-apparel brand is launching a new product and can give free samples to only two people. The network below shows who influences whom on social media. Use network metrics to decide who should receive the samples.
library(igraph)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:igraph':
##
## as_data_frame, groups, union
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
# A social media network around a brand
g_mkt <- graph_from_literal(
Brand-Ava-Ben-Cara, # chain of connections
Brand-Cara,
Ava-Dan:Eli:Fay, # Ava is connected to Dan, Eli, and Fay
Ben-Gus,
Cara-Hal:Ivy,
Dan-Eli,
Fay-Gus,
Hal-Ivy-Jon,
Brand-Kim-Jon
)
set.seed(123) # fixes the layout so the plot looks the same each time
plot(g_mkt, vertex.color = "lightblue", vertex.label.color = "black")
Look at the plot above. Who looks most “central” visually? Identify any cliques (tightly connected groups).
Your answer:Ava, Ben, and Cara seem to be quite crucial because they connect different parts of the network to the Brand. Other closely associated groups in the network include Ava, Ben, and Cara, who form a triangle, and Hal and Ivy, who are connected to both Cara and each other. Eli and Dan are connected to one other and to Ava.
Compute degree, closeness, and betweenness, then put the results in one data frame and rank the nodes.
centrality_df <- data.frame(
person = V(g_mkt)$name,
degree = degree(g_mkt),
closeness = round(closeness(g_mkt), 3),
betweenness = round(betweenness(g_mkt), 2)
)
centrality_df %>% arrange(desc(betweenness))
## person degree closeness betweenness
## Ava Ava 5 0.050 25.83
## Cara Cara 4 0.048 18.17
## Brand Brand 3 0.050 17.00
## Ben Ben 3 0.048 13.33
## Kim Kim 2 0.037 5.00
## Ivy Ivy 3 0.037 4.50
## Fay Fay 2 0.036 2.17
## Gus Gus 2 0.034 1.50
## Jon Jon 2 0.033 1.50
## Dan Dan 2 0.034 0.00
## Eli Eli 2 0.034 0.00
## Hal Hal 2 0.034 0.00
Your answer: Which people rank highest on each measure? Do the rankings agree?Ava demonstrates the highest degree centrality with five direct connections. Cara exhibits substantial connectivity as well, serving as a critical bridge that links the subgroup containing Hal and Ivy to the broader network infrastructure. Betweenness centrality identifies individuals who function as intermediaries connecting disparate network segments, whereas closeness centrality highlights those positioned to efficiently reach other network members.
Which two people should receive free samples? Justify your choice using at least two different metrics. (Hint: is high degree the same as being a bridge?)I would pick Ava and Cara to get the free samples. Ava has the most connections with five direct links, which means she can tell many people about the product. Cara has four direct connections and links the Brand to a close group that includes Hal and Ivy. Looking at how many connections someone has and how well they connect different groups helps find the best people to reach more customers. Picking Ava and Cara would help the brand get the word out to more people.