NEW
A representation of a graph as a list of vertex pairs indicating edges, optionally with weights and directions.
DESCRIPTION
An edge list encodes a graph by listing each edge as a pair (or tuple) of node identifiers, often with an optional weight or label. It is simple, human-readable, and compact for sparse graphs, making it common in datasets and interchange formats. Many libraries, including NetworkX and igraph, load graphs from edge lists. Compared to adjacency matrices, edge lists are more space-efficient for sparse data but slower for certain lookups. They are frequently used in social network and web graph analysis.
ALTERNATIVE DEFINITIONS
NetworkX
Read edge list from a file and create a graph.
Defines practical use and standard format for reading edge lists.
Stanford SNAP
SNAP datasets commonly provide graphs as edge lists, with each line representing an edge as a pair of node IDs.
Highlights widespread use of edge list format in open datasets.
igraph
Graphs can be created from a list of edges, where each edge is a tuple of vertex indices.
Shows construction from edge tuples within a graph library.
RELATED TERMS
Graph NetworkX igraph Node Edge Weighted Graph Directed Graph Graph File Format
COMPETING TERMS
Adjacency Matrix Adjacency List
RELATIONS
- Broader: List
KNOWLEDGE AREAS
Data Modeling Semantic & Knowledge Modeling Data Science
TARGET AUDIENCE
Data Scientist Data Engineer Software Developer
EXTERNAL SOURCES
- Wikipedia - Graph (discrete mathematics)#Representations
- NetworkX - Edge list I/O in NetworkX
- Stanford SNAP - Datasets providing edge lists
- igraph - Tutorial creating graphs from edge lists
TOP QUESTIONS
When should I use an Edge List representation?
Use it for sparse graphs, simple interchange formats, and human-readable datasets.
Category: HowTo
How does an Edge List compare to an Adjacency Matrix?
Edge lists are space-efficient for sparse graphs; adjacency matrices provide faster neighbor checks but use more memory.
Category: Alternatives
What is a common mistake with Edge Lists?
Failing to handle direction or weights consistently can corrupt graph semantics.
Category: Mistakes
How do I load Edge Lists in Python?
NetworkX and igraph provide functions to read edge lists directly into graph structures.
Category: HowTo
What is the risk of using large Edge Lists?
Parsing huge text files can be slow; consider binary formats or chunked processing.
Category: Risk
Are Edge Lists suitable for weighted graphs?
Yes; include an additional value per edge to represent weight or label.
Category: Topic
What file conventions exist for Edge Lists?
Commonly one edge per line with source and target IDs separated by whitespace or delimiter.
Category: Standards
How to visualize Edge Lists?
Import into a graph tool and render nodes and edges; layout algorithms improve readability.
Category: HowTo
What domains commonly use Edge Lists?
Social networks, web graphs, citation networks, and biological interaction networks.
Category: Example