I had a go at rewriting the latter half in Lil, flexing its K/Q heritage:
t:readcsv[read["ICC Test Bowl 3003.csv"] "ssiiiiisffiiis"]
sorted: select orderby Wkts desc orderby Ave asc where Wkts from t
best: select where !gindex by Wkts from sorted
bestInClass: select where each v i in Ave v~min (i+1) take Ave end from best
allWkts: sorted.Wkts
mostCompetitive: extract where (gindex=0)&15<count gindex by value from allWkts
mostCompetitiveBowlers: select where Wkts in mostCompetitive from best
gap: min allWkts drop 1+range max allWkts
"bestInClass" is probably the most awkward adaptation; I didn't see a tidy way to make a suffix list like ",\".