← All datasets

Royal Houses of Europe

Two joinable datasets on the family network behind a thousand years of European succession: 10,184 people across the houses that produced a European monarch, and 12,853 edges between them (11,315 parent links pointing Parent to Child, 1,538 marriages with the wedding year on 1,149). Membership is behavioral, not label-deep: a house qualifies by containing a monarch (position in the graph's monarch tree), which is how the House of Hanover got in despite being typed only noble family, and Queen Victoria with it; the Wittelsbachs (385 people), Hohenzollerns (367), Ottomans (312, in because their empire's continent includes Europe), Rurikids and Radziwills lead the roster, and antiquity is legitimate: the Argeads are here and Alexander the Great's wedding is dated -323. Each person carries sex, birth and death (8,503 computed ages at death), house, country, cause AND manner of death where the graph records them (1,218 causes: Louis XIV's row says gangrene), children count, and their longest dated position with its span: Louis XIV's King of France and Navarre, 1643-1715, the 72-year record the test suite pins. Honesty guards: no position outlives its holder (a Havelberg bishop's end year sat a typoed century past his death), ages cap at 105, and the network is CLOSED: every edge endpoint is a person on file, so the graph loads straight into networkx. The famous analyses are one join away: consanguinity versus lifespan in the Habsburgs, dynasty survival curves, marriage-age trends across five centuries. Built with an 11-test acceptance suite anchored on Louis XIV's 72 years, Charles II of Spain's Habsburg tags and age 39, Victoria's 1837-1901, and closure of every edge.
23,037 rows 2 joinable files last pulled 2026-09-22
People 10,184 rows × 16 columns
PersonPerson_IDSexHouseCountryBornDiedAge_At_DeathMain_PositionPosition_FromPosition_ToPosition_YearsCause_Of_DeathManner_Of_DeathChildren_CountPerson_URL
Family Edges 12,853 rows × 6 columns
Edge_TypeFromFrom_IDToTo_IDMarried_Year

Questions and answers

What is the Royal Houses of Europe dataset?

Two joinable datasets on the family network behind a thousand years of European succession: 10,184 people across the houses that produced a European monarch, and 12,853 edges between them (11,315 parent links pointing Parent to Child, 1,538 marriages with the wedding year on 1,149). Membership is behavioral, not label-deep: a house qualifies by containing a monarch (position in the graph's monarch tree), which is how the House of Hanover got in despite being typed only noble family, and Queen Victoria with it; the Wittelsbachs (385 people), Hohenzollerns (367), Ottomans (312, in because their empire's continent includes Europe), Rurikids and Radziwills lead the roster, and antiquity is legitimate: the Argeads are here and Alexander the Great's wedding is dated -323. Each person carries sex, birth and death (8,503 computed ages at death), house, country, cause AND manner of death where the graph records them (1,218 causes: Louis XIV's row says gangrene), children count, and their longest dated position with its span: Louis XIV's King of France and Navarre, 1643-1715, the 72-year record the test suite pins. Honesty guards: no position outlives its holder (a Havelberg bishop's end year sat a typoed century past his death), ages cap at 105, and the network is CLOSED: every edge endpoint is a person on file, so the graph loads straight into networkx. The famous analyses are one join away: consanguinity versus lifespan in the Habsburgs, dynasty survival curves, marriage-age trends across five centuries. Built with an 11-test acceptance suite anchored on Louis XIV's 72 years, Charles II of Spain's Habsburg tags and age 39, Victoria's 1837-1901, and closure of every edge.

How big is the Royal Houses of Europe dataset?

23,037 rows across 2 joinable files, with 22 columns in total: Person, Person_ID, Sex, House, Country, Born, Died, Age_At_Death, Main_Position, Position_From, Position_To, Position_Years, Cause_Of_Death, Manner_Of_Death, Children_Count, Person_URL, Edge_Type, From, From_ID, To, To_ID, Married_Year.

Where does the data come from?

It is built by programmatically scraping wikidata.org, last pulled on 2026-09-22. Datasets are versioned; older versions stay downloadable.

Is the dataset free to download?

Yes. Every CodeSights dataset is completely free as a CSV download; a free account is all it takes. Anyone can preview the data without signing in.

Can I see the code that built this dataset?

Yes. The exact Python scraper that built it is viewable on the dataset page by any signed-in member, so every number is reproducible.

How do the files join?

Join the files on Person_ID: both From_ID and To_ID in edges point at people.Person_ID, so the edge file self-joins the family tree; Edge_Type separates Parent links (From is the parent) from Marriages (symmetric, one row per couple).

Can the data contain errors?

Automated scraping leaves room for error and the underlying sources change over time, so no version is guaranteed accurate or complete. If a number matters, verify it against the original source.

Browse every free dataset on CodeSights