Есть много проблем с вашим кодом, но две основные:
- Вы не сохраняете, не печатаете и не добавляете в список созданные вами
pd.DataFrame
объекты.
- Вы применяете
nunique
к меткам столбцов, а не к данным в вашем фрейме данных.
Здесь вы можете использовать nunique
непосредственно с вашим фреймом данных, затем sort_values
:
np.random.seed(0)
df = pd.DataFrame(np.random.randint(0, 10, (5, 5)))
res = df.nunique()\
.sort_values(ascending=False)\
.rename('Count')\
.to_frame()
print(res)
Count
1 5
3 4
2 4
0 4
4 3