Making social networks from fictional characters in literature
Object-Oriented model written in Python, with three main classes: Character, Book, Network.
Four interlinked databases:
- BOOKS_complete.csv contains all info on 170 contemporary Dutch novels
- NODES_complete.csv contains all demographic info on 2137 characters in those novels
- NAMES_complete.csv contains all name variants of those characters
- EDGES_complete.csv contains all relational info between those characters
Python scripts:
- characternetworks.py contains the three classes Character, Book, and Network
- Superscript.py computes character networks, ranks all characters, and output the results to character-rankings.csv
- conflict.py models enemy/friend relations between characters on two levels:
- enemy/friend triads: tests Heider's social balance theory based on enemies and friends in the corpus
- enemy dyads: computes hierarchies between every two enemies based on a 'conflictscore' (one for each measure)
Csv output:
- character-rankings.csv (output of write_to_csv() in Superscript.py)
- character-rankings_conflictscore.csv (output of conflict.py)
- networkstats.csv (output of compute_networkstats() in Superscript.py)
- communities_frequency_distributions.csv (output of detect_communities() in Superscript.py)