DOI: 10.5281/zenodo.16413928
title: Form Without Force: Symbolic Legal Order and Institutional Breakdown in Puerto Rico and the U.S.

description: Here is a recommended Zenodo dataset description based on your project, including the panel regression and robustness checks using the V-Dem data:



Title:Form Without Force: Symbolic Legal Order and Institutional Breakdown in Puerto Rico and the U.S.

Description:This dataset and code repository support the empirical analysis presented in the paper Form Without Force: Symbolic Legal Order and Institutional Breakdown in Puerto Rico and the U.S. Using the V-Dem v15 dataset (2024 release), we explore how judicial constraints and electoral institutions interact with corruption to shape civil liberties across countries from 1789 to 2023.

The study employs PanelOLS regressions with country and time fixed effects. Results show that corruption significantly moderates the effect of judicial constraints on civil liberties. Two robustness checks (substituting public-sector corruption and regional corruption indices) confirm the finding, and interaction terms remain statistically significant.

Included materials:





V-Dem-CY-Core-v15.csv: Full country-year V-Dem dataset.




2025.ipynb: Reproducible Python notebook with data cleaning, regression analysis, and robustness checks.



All scripts follow FAIR principles and are suitable for replication, adaptation, or extension.

License:Creative Commons Attribution 4.0 International (CC BY 4.0)

Keywords:Panel data, V-Dem, civil liberties, corruption, judicial independence, symbolic institutions, institutional decay, Puerto Rico, development, governance

Language:English

Version:v1.0 (2025-07-24)

Funding:None

✅ Step-by-Step Guide to Run Your V-Dem PanelOLS in Google Colab

🔹 1. Open Google Colab





Go to: https://colab.research.google.com




Click "File > Upload Notebook" and select your file: 2025.ipynb(Or click "New Notebook" and paste the code manually)





🔹 2. Upload the V-Dem Dataset

If you're starting from scratch:





In Colab, click the folder icon (📁) on the left sidebar.




Click the "Upload" icon (📤) and upload your V-Dem-CY-Core-v15.csv file.



Then, mount the path in your code:



python





CopiarEditar



DATA_PATH = '/content/V-Dem-CY-Core-v15.csv'





🔹 3. Install Required Python Libraries

In the first cell of the notebook, run:



python





CopiarEditar



!pip install linearmodels statsmodels pandas numpy





🔹 4. Load the Data and Run the Model

Ensure your notebook includes:



python





CopiarEditar



import pandas as pd
import numpy as np
from linearmodels.panel import PanelOLS
import statsmodels.api as sm

# Load data
df = pd.read_csv('/content/V-Dem-CY-Core-v15.csv')

# Drop rows with missing data in key variables
df_model = df[['country_name', 'year', 'v2x_civlib', 'v2x_jucon', 'v2x_polyarchy', 'v2x_pubcorr']].dropna()

# Set panel index
df_model = df_model.set_index(['country_name', 'year'])

# Create interaction term
df_model['pubcorr_x_jucon'] = df_model['v2x_pubcorr'] * df_model['v2x_jucon']

# Define the model
exog = sm.add_constant(df_model[['v2x_pubcorr', 'v2x_jucon', 'v2x_polyarchy', 'pubcorr_x_jucon']])
mod = PanelOLS(df_model['v2x_civlib'], exog, entity_effects=True, time_effects=True)

# Fit the model
res = mod.fit()
print(res.summary)





🔹 5. Save Results or Export Notebook

To download results:



python





CopiarEditar



with open('/content/results.txt', 'w') as f:
    f.write(res.summary.as_text())



To download the file to your computer:



python





CopiarEditar



from google.colab import files
files.download('/content/results.txt')





🎯 Notes





Colab is cloud-based; you don’t need to install anything on your local machine.




Always upload both the .ipynb notebook and .csv dataset together.




If you revise the dataset, re-upload it before rerunning the code.