In the game of go as well as in martial arts, shogi, for tea ceremonies and for flower arrangements, players have a rank expressed in dan and kyu.
Dan and kyu form a simple numerical system:
30 kyu < 29 kyu < 28 kyu < ... < 3 kyu < 2 kyu < 1 kyu < 1 dan < 2 dan < ... < 8 dan < 9 dan
In other words:
- Kyu can be considered negative numbers/
- Dan can be considered positive numbers.
- There is no "zero", that is, rank 1 dan comes directly above rank 1 kyu.
Kyu are usually abbreviated k and dan d.
As a result, when organising tournaments we often have spreadsheets with a "rank" column, which contains abbreviated ranks such as 13k or 2d, and we want to be able to sort the spreadsheet by rank, with stronger players at the top and weaker players at the bottom.
What's the simplest way to sort the spreadsheet by the rank column, which is kinda numerical but also contains letters "d" and "k"?
I am okay with creating a new column with a formula that automatically computes a numerical value from the rank value, but I want to avoid forcing the user to manually type more information than the abbreviated rank. In particular I want to avoid having to type "03k" instead of just "3k" for a 3 kyu player, and I want to avoid having to manually fill two columns with one column being numeric and the other containing the "dan or kyu" unit.


