Network Analysis in Python I

Network Analysis in Python I

NETWORK ANALYSIS IN PYTHON I Introduction to networks Network Analysis in Python I Networks! ● Examples: ● Social ● Transportation ● Model relationships between entities Network Analysis in Python I Networks! ● Insights: ● Important entities: influencers in social network ● Pathfinding: most efficient transport path ● Clustering: finding communities Network Analysis in Python I Network structure Node Edge Graph Node Network Analysis in Python I Network structure Friendship: Hugo: date: 2016-05-21 id: 1, age: 34 Eric: id: 2, age: 29 Social Graph Network Analysis in Python I NetworkX API basics In [1]: import networkx as nx In [2]: G = nx.Graph() In [4]: G.add_nodes_from([1, 2, 3]) In [5]: G.nodes() Out[5]: [1, 2, 3] In [6]: G.add_edge(1, 2) In [7]: G.edges() Out[7]: [(1, 2)] Network Analysis in Python I NetworkX API basics In [8]: G.node[1]['label'] = 'blue' In [9]: G.nodes(data=True) Out[9]: [(1, {'label': 'blue'}), (2, {}), (3, {})] Network Analysis in Python I NetworkX API basics In [10]: nx.draw(G) In [11]: import matplotlib.pyplot as plt In [12]: plt.show() NETWORK ANALYSIS IN PYTHON I Let’s practice! NETWORK ANALYSIS IN PYTHON Types of graphs Network Analysis in Python I Undirected graphs ● Facebook social graph Network Analysis in Python I Undirected graphs In [1]: import networkx as nx In [2]: G = nx.Graph() In [3]: type(G) Out[3]: networkx.classes.graph.Graph Network Analysis in Python I Directed graphs ● Directed: Twi"er social graph Network Analysis in Python I Directed graphs In [4]: D = nx.DiGraph() In [5]: type(D) Out[5]: networkx.classes.digraph.DiGraph Network Analysis in Python I Types of graphs ● Multi(Di)Graph: Trip records between bike sharing stations Network Analysis in Python I Multi-edge (Directed) graphs In [6]: M = nx.MultiGraph() In [7]: type(M) Out[7]: networkx.classes.multigraph.MultiGraph In [8]: MD = nx.MultiDiGraph() In [9]: type(MD) Out[9]: networkx.classes.multidigraph.MultiDiGraph Network Analysis in Python I Weights on graphs ● Edges can contain weights 3 Network Analysis in Python I Self-loops ● Nodes that are connected to themselves NETWORK ANALYSIS IN PYTHON I Let’s practice! NETWORK ANALYSIS IN PYTHON I Network visualization Network Analysis in Python I Irrational vs. Rational visualizations Network Analysis in Python I Visualizing networks ● Matrix plots ● Arc plots ● Circos plots Network Analysis in Python I Visualizing networks ● Matrix plots ● Arc plots ● Circos plots Network Analysis in Python I Matrix plot A B C A B B A C C Network Analysis in Python I Matrix plot A B C A B B A C C Network Analysis in Python I Matrix plot A B C A B B A C C Network Analysis in Python I Matrix plot A B C A B B A C C Network Analysis in Python I Directed matrices A B C A B B A C C Network Analysis in Python I Visualizing networks ● Matrix Plots ● Arc Plots ● Circos Plots Network Analysis in Python I Arc plot B A A B C C ordered axis Network Analysis in Python I Visualizing networks ● Matrix Plots ● Arc Plots ● Circos Plots Network Analysis in Python I Circos plot A A F F B B D E C E D C Network Analysis in Python I nxviz API In [1]: import nxviz as nv In [2]: import matplotlib.pyplot as plt In [3]: ap = nv.ArcPlot(G) In [4]: ap.draw() In [5]: plt.show() NETWORK ANALYSIS IN PYTHON I Let’s practice!.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    34 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us