Использование collections.Counter
для создания словаря подсчетов:
from collections import Counter
df = pd.DataFrame([['Italy', 'Transport for London'],
['Italy', 'Roseanne Barr Actor leavin'],
['America', 'Americas Transport for London'],
['America', 'Transport for London'],
['America', 'Roseanne Barr Actor leavin'],
['France', 'Americas Transport for London']],
columns=['A', 'B'])
# calculate counts
c = Counter(df['A'])
# apply reordering
df = df.iloc[df['A'].map(c).argsort()[::-1]]
# save to excel
df.to_excel('file.xlsx', index=False)
Результат:
print(df)
A B
4 America Roseanne Barr Actor leavin
3 America Transport for London
2 America Americas Transport for London
1 Italy Roseanne Barr Actor leavin
0 Italy Transport for London
5 France Americas Transport for London