根据类型 Pandas Python 对两列进行排序

Sort two columns based on type Pandas Python

我需要根据数字和类型对两列进行排序

  1. 881 x
  2. 497 岁
  3. 2400 x
  4. 2559 岁
  5. 2556 z
  6. 1748 x
  7. 443 岁
  8. 217 z
  9. 1024 岁

当前代码片段:

    import pandas as pd
    data1 = pd.read_csv('data/extracted.csv')
    data2 = data1.sort(['Result7d'], ascending=True)
    data2.to_csv('data/sorted.csv')

有了这个Type(x,y,z)就是排序,那么如何使用pandas,Python?

对单个类别进行排序

预期结果:

  1. 881 x
  2. 1784 x
  3. 2400 x
  4. 433 岁
  5. 497 z
  6. 1024 x
  7. 2559 岁
  8. 217 z
  9. 2556 岁

这可能有效:

import pandas as pd
data1 = pd.read_csv('data/extracted.csv')
#data2 = data1.sort(['Result7d'], ascending=True)
# Use sort_values instead
data1['filenumber'] = data['file'].apply(lambda x: int(x.split('.')[0]))
data2 = data1.sort_values(by=['type', 'filenumber'])
del data2['filenumber']
data2.to_csv('data/sorted.csv')