You do not need a machine learning algorithm to predict that the presidency of Donald Trump will be controversial.
One of the most discussed aspects of his reign is the massive potential for conflicts of interest. Trump’s complex business empire is entangled with national and international politics.
Buzzfeed has mapped many of the relationships between businesses and people in what they have dubbed Trumpworld. They provided the data to enable citizens data science into the wheelings and dealings of Donald J. Trump. The raw data set consists of three subsets of connections between:
- People and organisations
This post analyses the connections between organisations using the mighty igraph package in the R language. The code snippet below converts the data to a graph that can be analysed using social network analysis techniques. I have downloaded the table of the raw data file as CSV files. This data is subsetted to contain only ownership relationships.
# Read data trumpworld.org <- read.csv("TrumpWorld DataOrg.csv") trumpworld.org.ownership <- subset(trumpworld.org, Connection=="Ownership")[,1:2] # Create graph of ownerships library(igraph) org.ownership <- graph.edgelist(as.matrix(trumpworld.org.ownership)) # Analysis nrow(trumpworld.org.ownership) length(unique(c(trumpworld.org.ownership[,1], trumpworld.org.ownership[,2]))) # Plot Graph par(mar=rep(0,4)) plot(org.ownership, layout=layout.fruchterman.reingold, vertex.label=NA, vertex.size=2, edge.arrow.size=.1 )
This network contains 309 ownership relationships between 322 firms.
When we plot the data, we see that most relationships are between two firms. The plot is organised with the Fruchterman-Reingold algorithm to improve its clarity.
We can also see a large cluster in the centre. The names have been removed for clarity.
The Trumpland analysis continues with this conglomerate. The second code section excises this connected subnetwork so we can analyse it in more detail.
# Find most connected firm which.max(degree(org.ownership)) # Create subnetworks org.ownership.d <- decompose(org.ownership) # Find largest subnetwork largest <- which.max(sapply(org.ownership.d, diameter)) #Plot largest subnetwork plot(org.ownership.d[[largest]], layout=layout.fruchterman.reingold, vertex.label.cex=.5, vertex.size=5, edge.arrow.size=.1 )
The node with the highest degree identifies the business with the most holdings. This analysis shows that DJT Holdings LLC owns 33 other organisations. These organisations own other organisations. We can now use the cluster function to investigate this subnetwork.
This Trumpworld analysis shows that the ownership network is clearly a star network. DJT Holdings LLC centrally controls all organisations. Perhaps this graph visualises the management style of the soon to be president Trump. Trump centrally controls his empire, which is typical for a family business.
Does this chart visualise Trump’s leadership style? Is the star network an expression of his lack of trust and thus desire to oversee everything directly?
View this code and associated files on GitHub.