Importowanie i wizualizacja sieci Twitter

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

Alex Hanna

Computational Social Scientist

Listy krawędzi

         BethMohn           ChristianMohn
           ASilNY         LarrySchweikart
         mattg444              WhiteHouse
    hlthiskrieger                aravosis
          Herky86          SenJeffMerkley
  PatrickParsons9              TwitterGov
    New_Narrative                 CFR_org
           dddlor               roywoodjr
      scrivener50          michaelscherer
  ChiefsHeadCoach           johnpavlovitz
Analiza danych z mediów społecznościowych w Pythonie

Importowanie sieci retweetów

import networkx as nx

## ... flatten and convert JSON
G_rt = nx.from_pandas_edgelist( tweets, source = 'user-screen_name', target = 'retweeted_status-user-screen_name', create_using = nx.DiGraph())
Analiza danych z mediów społecznościowych w Pythonie

Importowanie sieci cytowań

import networkx as nx

## ... flatten and convert JSON

G_quote = nx.from_pandas_edgelist( tweets, source = 'user-screen_name', target = 'quoted_status-user-screen_name', create_using = nx.DiGraph())
Analiza danych z mediów społecznościowych w Pythonie

Importowanie sieci odpowiedzi

import networkx as nx

## ... flatten and convert JSON

G_reply = nx.from_pandas_edgelist(
                           tweets,
                           source = 'user-screen_name', 
                           target = 'in_reply_to_screen_name'
                           create_using = nx.DiGraph())
Analiza danych z mediów społecznościowych w Pythonie

Wizualizacja

nx.draw_networkx(T)
plt.axis('off')

Graf skierowany

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

Opcje wizualizacji

sizes = 
   [x[1]*100 for x in T.degree()]
nx.draw_networkx(T, 
            node_size = sizes, 
            with_labels = False, 
            alpha = 0.6,
            width = 0.3)
plt.axis('off')

Zmodyfikowany graf skierowany

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

Układ kołowy

circle_pos =
    nx.circular_layout(T)
nx.draw_networkx(T,
            pos = circle_pos,
            node_size = sizes, 
            with_labels = False, 
            alpha = 0.6,
            width = 0.3)
plt.axis('off')

Graf skierowany – układ kołowy

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

Czas na ćwiczenia!

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

Preparing Video For Download...