Hi everyone,
I know that the architecture of the usage stats algorithm has to be reviewed, but we currently meet another huge problematic in the usage stats algorithm, which is the "
Teammates" field. I know that this field currently equals P(XY)  P(X) (usage stat of Y in the teams with X  usage stat of X). But it drives two problems:
1) Some Pokémon don't have any Teammates
When your Pokémon has 90%+ usage (like Snorlax in [Gen 2] OU for example), it will never have teammates lol Welcome Snorlax
https://www.smogon.com/stats/202103/moveset/gen2ou1760.txt
So if you want to deal with Snorlax in [Gen 2] OU you will have no idea about what are its teammates, so you will put a random Machamp in your team, be walled by Zapdos which is (let's suppose) P(XY) = 60% with Snorlax, and then will lose the game to Lax when your Machamp takes its 3 Body Slam upon switchin... Amazing :)
2) Top tier Pokémon will never be teammates
Let's take the Snorlax example again. You know like me that Snorlax has almost 100% usage in [Gen 2] OU. So Snorlax should appear in all teams with Zapdos (for example) and so be the first Zapdos teammate. But it's not what it's shown here.
++
 Zapdos 
++
 Teammates 
 Nidoking +8.054% 
 Gengar +7.914% 
 Jynx +6.426% 
 Cloyster +4.579% 
 Rhydon +3.566% 
 Tyranitar +2.227% 
 Steelix +2.223% 
 Exeggutor +0.647% 
++
We have a random Nidoking and a random Exeggutor, amazing lol So I will play a Pokémon who beats Zapdos + Nidoking + Exeggutor in my team and be 60d by Lax, cool :)
P(XY)  P(X) will remove all the top usage Pokémon from the Teammates usage which (again) has 0 sense... We can see it for example with Scizor:
++
 Scizor 
++
 Teammates 
 Smeargle +79.684% 
 Machamp +60.492% 
 Jolteon +54.356% 
 Marowak +51.812% 
 Vaporeon +19.768% 
 Quagsire +9.391% 
 Charizard +2.126% 
 Aerodactyl +1.387% 

Snorlax +0.617% 
++
Snorlax has currently 98.116% usage, Smeargle does have 7.55%.
=> Snorlax is played in 98.733% of teams with Scizor vs 87.234% for Smeargle. So you want to deal with Snorlax
in priority, rather than this Smeargle!!! So those rankings does have 0 utility for players... I really don't know in what cases it can help someone
Oh I know: if all the Pokémon usage stats would be equal, genius
Conclusion
What people want to know is simply "What are the most often played Pokémon with X?", and the answer is
P(XY). Not "P(XY)  P(X)". Those figures clearly do not answer that question, are useless and drive players to errors. It is
quite more useful to know that Snorlax has a P(XY) usage of 100% with Zapdos (even if it's obvious, it has to be known) than Nidoking has a P(XY)  P(X) usage of +10%...
So you just have to put the P(XY) instead of P(XY)  P(X), because it's all that people want to know! And if you are worried about space (you think there is not enough space in
https://www.smogon.com/stats/202103/moveset/gen2ou1760.txt to show all the Pokémon teammates if for example there are many Pokémon with a high usage), simply create a separate stat file like "stats/202103/
teammates/gen2ou1760.txt" for example, where you list all the Pokémon + their P(XY) sorted by descending order :)
There you have your amazing data!
Usage stats topic is crucial so I think this has to be seriously checked and listened to.
NDV