Recently I did some analysis of game logs in order to calculate the "
impact factor" of each card. This is based on 140k 2-player pro-rated games on Isotropic, in which at least one player was ranked in the top 100. The data only includes expansions up to Guilds.
For my next analysis, I wanted not to rank cards by impact, but characterize/classify cards by type. I applied
Principal component Analysis (PCA), which basically uses a small number of dimensions to describe as much variance among the cards as possible.
The detailsI'm going to start out by saying, if you don't understand any of this, and/or you think it's all bullshit, that's okay. Really, it's just fun to look at the plots whether or not you think they reflect any deeper meaning. Anyways I'm not going to go into every little detail. You can ask me anything, or else you can pm me and I'll give you a github link.
In order to do this analysis, I defined two relations, which I call "promote" and "love". Prom(X,Y) is the extent to which the gain percentage of Y increases when X is present. Love(X,Y) is the extent to which the gain percentage of X increases relative to other cards, when Y is present. For each card X, I calculated 412 features corresponding to Prom(X,Y) and Love(X,Y) for each card Y. I also applied some normalization so that my analysis doesn't care so much about how much it promotes/loves other cards, but rather,
which cards it promotes/loves.
Additionally, you might notice that each card is assigned a certain color. These are based on a basic cluster analysis. I created seeds for 9 clusters (villages, terminal draw, nonterminal draw, trashing, junking, gaining, payoff, victory), and I used some algorithm to infer classifications for the rest of the cards. The clustering algorithm is not very good, don't ask me why Rats is a village. Anyways, it's a guide to the eye.
RequestsHere I show a few sample plots, but I can generate more upon request. Just ask for Component X vs Component Y. You can also ask one or both of the axes to show the set of cards loved/promoted by component X.
If you would like to request I change my analysis completely, I'll consider it but I may not have time for that.
PlotsWithout further ado, here are a few plots to start out.
Additional notesBy inspection, I believe the first 6 components correspond to:
1. Important terminal cards vs villages
2. 5-cost cards, vs things that help you get 5-costs
3. Thinners vs cards that are best in thin decks
4. Slog cards vs engine cards
5. Trashing vs draw
6. Cheap cards and defense cards vs strong attacks and gainers
After #6, I couldn't tell what the components were getting at. Most components describe card types that are complementary to each other. For instance villages tend to love/promote terminals. Component 4 seems to be a major exception, in that engine cards seem to love/promote other engine cards. So component 4 describes cards that prefer to be unmixed.