Commit a2ba210a authored by Tiago Peixoto's avatar Tiago Peixoto

Add twitter_2009

parent 8d47da1a
#! /usr/bin/env python
# -*- coding: utf-8 -*-
# Copyright (C) 2020 Tiago de Paula Peixoto <>
# This program is free software: you can redistribute it and/or modify it under
# the terms of the GNU Affero General Public License as published by the Free
# Software Foundation, either version 3 of the License, or (at your option) any
# later version.
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
# details.
# You should have received a copy of the GNU Affero General Public License along
# with this program. If not, see <>.
from .. import *
title = "Twitter graph (2009)"
description = """A large (possibly complete) snapshot of Twitter in 2009, represented as an anonymized network of accounts and their follow links.[^icon]
[^icon]: Description obtained from the [ICON]( project."""
tags = ['Social', 'Online', 'Unweighted']
url = ''
citation = [('M. Cha, H. Haddadi, F. Benevenuto, and K. P. Gummadi, "Measuring User Influence in Twitter: The Million Follower Fallacy" Proc. Internat. AAAI Conf. on Weblogs and Social Media (ICWSM), 10-17 (2010).', '')]
icon_hash = '56a85c8e26855e083a2f78d4'
ustream_license = None
upstream_prefix = ''
files = [('links-anon.txt.gz', None, None)]
def fetch_upstream(force=False):
return fetch_upstream_files(__name__.split(".")[-1], upstream_prefix, files,
def parse(alts=None):
global files
name = __name__.split(".")[-1]
for fnames, alt, fmt in files:
if alts is not None and alt not in alts:
if isinstance(fnames, str):
fnames = [fnames]
with ExitStack() as stack:
fs = [stack.enter_context(open_upstream_file(name, fn, "r")) for fn in fnames]
def edges():
for line in fs[0]:
vs = line.split()
yield int(vs[0]), int(vs[1])
g = Graph() = g.add_edge_list(edges(), hashed=True, hash_type="int")
yield alt, g
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment