DOI: 10.5281/zenodo.16851638
title: Language, Law, and the Limits of Global Scalability: Institutional Legacies from Shakespeare to Bad Bunny

description: Dataset Contents

Analysis Files:



LATAM+OECD.ipynb - Main analysis notebook comparing regulatory effects across regions

OECD.ipynb - OECD-specific analysis

cervantes.ipynb - Historical case study analysis


Data Files:



culture_exports.csv - Cultural exports data from UNESCO

explanatory.csv - Regulatory and institutional variables

GDPPC.csv - GDP per capita data from World Bank

p5v2018.csv - Polity V democracy scores


How to Use in Google Colab

Step 1: Download Dataset









 

 




python



# Install required packages
!pip install pandas numpy statsmodels matplotlib seaborn

# Download files directly from Zenodo
import urllib.request
import pandas as pd

# Download main datasets
urllib.request.urlretrieve('https://zenodo.org/record/16851638/files/culture_exports.csv', 'culture_exports.csv')
urllib.request.urlretrieve('https://zenodo.org/record/16851638/files/explanatory.csv', 'explanatory.csv')
urllib.request.urlretrieve('https://zenodo.org/record/16851638/files/GDPPC.csv', 'GDPPC.csv')
urllib.request.urlretrieve('https://zenodo.org/record/16851638/files/p5v2018.csv', 'p5v2018.csv')



Step 2: Load and Explore Data









 

 




python



# Load main datasets
culture_exports = pd.read_csv('culture_exports.csv')
explanatory = pd.read_csv('explanatory.csv')
gdp_data = pd.read_csv('GDPPC.csv')
polity_data = pd.read_csv('p5v2018.csv')

# Display data structure
print("Culture exports shape:", culture_exports.shape)
print("Explanatory variables shape:", explanatory.shape)



Step 3: Run Analysis Notebooks









 

 




python



# Clone notebook from Zenodo and run
urllib.request.urlretrieve('https://zenodo.org/record/16851638/files/LATAM+OECD.ipynb', 'LATAM_OECD.ipynb')

# Open the notebook in Colab
from google.colab import files
files.view('LATAM_OECD.ipynb')



Key Variables

Dependent Variable:



log_cultural_exports - Log cultural exports per capita


Independent Variables:



xconst - Executive constraints (legal flexibility proxy)

trade_openness - Trade as % of GDP (administrative burden proxy)

internet_penetration - Internet users % (market access proxy)

log_gdp_pc - Log GDP per capita

education - Education spending % of GDP


Replication Instructions



OECD Analysis: Use OECD.ipynb for developed country sample

Latin America Analysis: Filter data for: ARG, BOL, BRA, CHL, COL, ECU, MEX, PER, PRY, VEN

Regional Comparison: Use LATAM+OECD.ipynb for full comparative analysis


Sample Analysis Code









 

 




python



# Basic regression setup
import statsmodels.formula.api as smf

# Latin America fixed effects model
latam_data = merged_data[merged_data['iso3c'].isin(['ARG', 'BOL', 'BRA', 'CHL', 'COL', 'ECU', 'MEX', 'PER', 'PRY', 'VEN'])]

model = smf.ols('log_cultural_exports ~ xconst + log_gdp_pc + trade_openness + internet_penetration + education + C(year) + C(iso3c)', 
                data=latam_data).fit(cov_type='cluster', cov_kwds={'groups': latam_data['iso3c']})
print(model.summary())



Citation

When using this dataset, please cite:









 

 






Brown, S. M. & Hall, D. J. (2025). Language, Law, and the Limits of Global Scalability: 
Institutional Legacies from Shakespeare to Bad Bunny [Dataset]. 
Zenodo. https://doi.org/10.5281/zenodo.16851638



Technical Requirements



Python 3.7+

pandas, numpy, statsmodels, matplotlib, seaborn

Google Colab or Jupyter notebook environment


Support

For questions about data usage or replication, please refer to the analysis notebooks or contact the authors through the associated journal publication.