Wizualizacja sieci Twitter

Analiza danych z mediów społecznościowych w R

Sowmya Vivek

Data Science Coach

Przegląd lekcji

  • Tworzenie wykresu sieci z domyślnymi parametrami
  • Stosowanie atrybutów formatowania w celu poprawy czytelności
  • Używanie centralności i atrybutów sieci do ulepszenia wykresu
Analiza danych z mediów społecznościowych w R

Podgląd sieci retweetów

# View the retweet network
print.igraph(nw_rtweet)
IGRAPH e7e618c DN-- 21 39 -- 
+ attr: name (v/c), followers (v/c)
+ edges from e7e618c (vertex names):
 [1] w3daily    ->RealFirstBuzz   w3daily    ->RealFirstBuzz  
 [3] w3daily    ->Giasaysthat     w3daily    ->RealFirstBuzz  
 [5] VanesEtim  ->PotionVanity    VanesEtim  ->DAVIDxCGN      
 [7] VanesEtim  ->PotionVanity    VanesEtim  ->Avinash_galaxy 
 [9] VanesEtim  ->PotionVanity    VanesEtim  ->BklynLeague    
[11] RedNileShop->Macaw_Blink     RedNileShop->leuqimcouture  
[13] RedNileShop->StoreDiv        RedNileShop->PotionVanity   
[15] RedNileShop->SCISSORSAPPAREL RedNileShop->Themoon12961958
+ ... omitted several edges
Analiza danych z mediów społecznościowych w R

Tworzenie podstawowego wykresu sieci

# Create the base network plot
set.seed(1234)  
plot.igraph(nw_rtweet)
Analiza danych z mediów społecznościowych w R

Podgląd podstawowego wykresu sieci

Podstawowy wykres sieci

Analiza danych z mediów społecznościowych w R

Formatowanie wykresu

# Format the network plot with attributes
set.seed(1234)
plot(nw_rtweet, asp = 9/16, 
     vertex.size = 10,
     vertex.color = "lightblue",
     edge.arrow.size = 0.5,
     edge.color = "black",
     vertex.label.cex = 0.9,
     vertex.label.color = "black")
Analiza danych z mediów społecznościowych w R

Podgląd sformatowanego wykresu

Sformatowany wykres sieci

Analiza danych z mediów społecznościowych w R

Ustawianie rozmiaru wierzchołka na podstawie stopnia wyjściowego

# Create a variable for out-degree
deg_out <- degree(nw_rtweet, mode = c("out"))
deg_out

Wartości stopnia wyjściowego

vert_size <- (deg_out * 2) + 10
Analiza danych z mediów społecznościowych w R

Przypisywanie vert_size do atrybutu rozmiaru wierzchołka

# Assign vert_size to vertex size attribute and plot network
set.seed(1234)
plot(nw_rtweet, asp = 9/16, 
     vertex.size = vert_size,
     vertex.color = "lightblue", 
     edge.arrow.size = 0.5,
     edge.color = "black",
          vertex.label.cex = 1.2,
     vertex.label.color = "black")
Analiza danych z mediów społecznościowych w R

Podgląd wykresu z nowymi atrybutami

Wykres z atrybutem rozmiaru wierzchołka

Analiza danych z mediów społecznościowych w R

Dodawanie atrybutów sieci

  • Użytkownicy często retweetujący i z dużą liczbą obserwujących mają większą wartość
  • Wykres sieci użytkowników z częstymi retweetami i dużą liczbą obserwujących
  • Dodanie liczby obserwujących jako atrybutu sieci
Analiza danych z mediów społecznościowych w R

Liczba obserwujących użytkowników sieci

# Import the followers count data frame
followers <- readRDS("follower_count.rds")
Analiza danych z mediów społecznościowych w R

Podgląd ramki danych obserwujących

# View the follower count
head(followers)
screen_name    followers_count
<fct>             <dbl>
adyo312            58        
AllesUndNix_       18        
Avinash_galaxy     1536        
BklynLeague        40        
DAVIDxCGN          267        
Giasaysthat        9139
Analiza danych z mediów społecznościowych w R

Liczba obserwujących użytkowników sieci

# Categorize high and low follower count
followers$follow <- ifelse(followers$followers_count > 500, "1", "0")
Analiza danych z mediów społecznościowych w R

Podgląd ramki danych obserwujących

# View the data frame with the new column
head(followers)
screen_name    followers_count    follow
<fct>              <dbl>          <chr>
adyo312              58              0    
AllesUndNix_         18              0    
Avinash_galaxy     1536              1    
BklynLeague          40              0    
DAVIDxCGN           267              0    
Giasaysthat        9139              1
Analiza danych z mediów społecznościowych w R

Przypisywanie atrybutów sieci

# Assign external network attributes to retweet network
V(nw_rtweet)$followers <- followers$follow
Analiza danych z mediów społecznościowych w R

Podgląd atrybutów wierzchołków

# View the vertex attributes
vertex_attr(nw_rtweet)

Atrybuty wierzchołków

Analiza danych z mediów społecznościowych w R

Zmiana kolorów wierzchołków

# Set the vertex colors for the plot
sub_color <- c("lightgreen", "tomato")
set.seed(1234)
plot(nw_rtweet, asp = 9/16,
     vertex.size = vert_size,
     edge.arrow.size = 0.5,
     vertex.label.cex = 1.3,
     vertex.color = sub_color[as.factor(vertex_attr(nw_rtweet, "followers"))],
     vertex.label.color = "black",
     vertex.frame.color = "grey")
Analiza danych z mediów społecznościowych w R

Podgląd wykresu z atrybutami wierzchołków

Wykres oparty na atrybutach wierzchołków

Analiza danych z mediów społecznościowych w R

Czas na ćwiczenia!

Analiza danych z mediów społecznościowych w R

Preparing Video For Download...