python使用pandas对序列进行排序

代码示例:

import pandas as pd

# DateFrame中,index为行索引,columns为列索引
##解决列名输出不对称问题
pd.set_option('display.unicode.ambiguous_as_wide',True)
pd.set_option('display.unicode.east_asian_width', True)
s1 = 'H:\pythonProject\COD1.csv'
s2 = pd.read_csv(s1, index_col=0)  # 指定第一列为行索引
print(s2)  # 输出原始数据
###Series结构索引
print('******---'*10)
#设置数据显示的行数和列数
pd.set_option('display.max_columns',500)
pd.set_option('display.width',1000)
##对其进行排序
a1 = s2.sort_values(by = 'COD',ascending=True,kind='heapsort')
print(a1)
#对COD列进行顺序排序
a1['顺序排名'] = a1['COD'].rank(method='first',ascending=True)#出现顺序排名
a1['最大值排名'] = a1['COD'].rank(method='max',ascending=True)#最大值排名
a1['最小值排名'] = a1['COD'].rank(method='min',ascending=True)#最大值排名
a1['平均值排名'] = a1['COD'].rank(method='average',ascending=True)#最大值排名
print('******---%%%%%%'*10)
print(a1)
##对两列进行排序,kind为排序类型,heapsort为堆排,quicksort为快速排序(默认),mergesort为混合排序
a2 = s2.sort_values(by = ['COD','b1'],ascending=[True,False],kind='heapsort')
print('******---'*10)
print(a2)
##对分组数据进行排序
a3 = s2.groupby(['COD'])['b1'].sum().reset_index()
a4 = a3.sort_values(by = 'COD',ascending=True,kind='heapsort')
print('******---'*10)
print(a4)


结果为:

H:\pythonProject\venv\Scripts\python.exe H:/pythonProject/main.py
           COD        b1        b2        b3        b4        b5
s1    6.246465  0.033064  0.044745  0.063753  0.046467  0.061651
s2    7.300000  0.032765  0.040027  0.060715  0.047964  0.062193
s3    7.151515  0.034787  0.044034  0.068569  0.047349  0.062583
s4    5.858586  0.038918  0.054270  0.070237  0.049240  0.063075
s5    7.458586  0.037524  0.047527  0.065471  0.046837  0.060580
s6    7.458586  0.044111  0.055397  0.075133  0.052282  0.067838
s7    7.022222  0.043152  0.056629  0.072561  0.052936  0.070106
s8    7.846465  0.044698  0.061596  0.073882  0.053898  0.073508
s9   10.561616  0.042522  0.060696  0.069076  0.051668  0.080740
s10   2.828283  0.048858  0.057816  0.077516  0.056419  0.081748
s11   8.492929  0.041209  0.058360  0.070019  0.053007  0.095129
s12  12.581818  0.046677  0.067138  0.071816  0.052377  0.082932
s11   8.492929  0.041209  0.058360  0.070019  0.053007  0.095129
******---******---******---******---******---******---******---******---******---******---
           COD        b1        b2        b3        b4        b5
s10   2.828283  0.048858  0.057816  0.077516  0.056419  0.081748
s4    5.858586  0.038918  0.054270  0.070237  0.049240  0.063075
s1    6.246465  0.033064  0.044745  0.063753  0.046467  0.061651
s7    7.022222  0.043152  0.056629  0.072561  0.052936  0.070106
s3    7.151515  0.034787  0.044034  0.068569  0.047349  0.062583
s2    7.300000  0.032765  0.040027  0.060715  0.047964  0.062193
s6    7.458586  0.044111  0.055397  0.075133  0.052282  0.067838
s5    7.458586  0.037524  0.047527  0.065471  0.046837  0.060580
s8    7.846465  0.044698  0.061596  0.073882  0.053898  0.073508
s11   8.492929  0.041209  0.058360  0.070019  0.053007  0.095129
s11   8.492929  0.041209  0.058360  0.070019  0.053007  0.095129
s9   10.561616  0.042522  0.060696  0.069076  0.051668  0.080740
s12  12.581818  0.046677  0.067138  0.071816  0.052377  0.082932
******---%%%%%%******---%%%%%%******---%%%%%%******---%%%%%%******---%%%%%%******---%%%%%%******---%%%%%%******---%%%%%%******---%%%%%%******---%%%%%%
           COD        b1        b2        b3        b4        b5  顺序排名  最大值排名  最小值排名  平均值排名
s10   2.828283  0.048858  0.057816  0.077516  0.056419  0.081748       1.0         1.0         1.0         1.0
s4    5.858586  0.038918  0.054270  0.070237  0.049240  0.063075       2.0         2.0         2.0         2.0
s1    6.246465  0.033064  0.044745  0.063753  0.046467  0.061651       3.0         3.0         3.0         3.0
s7    7.022222  0.043152  0.056629  0.072561  0.052936  0.070106       4.0         4.0         4.0         4.0
s3    7.151515  0.034787  0.044034  0.068569  0.047349  0.062583       5.0         5.0         5.0         5.0
s2    7.300000  0.032765  0.040027  0.060715  0.047964  0.062193       6.0         6.0         6.0         6.0
s6    7.458586  0.044111  0.055397  0.075133  0.052282  0.067838       7.0         8.0         7.0         7.5
s5    7.458586  0.037524  0.047527  0.065471  0.046837  0.060580       8.0         8.0         7.0         7.5
s8    7.846465  0.044698  0.061596  0.073882  0.053898  0.073508       9.0         9.0         9.0         9.0
s11   8.492929  0.041209  0.058360  0.070019  0.053007  0.095129      10.0        11.0        10.0        10.5
s11   8.492929  0.041209  0.058360  0.070019  0.053007  0.095129      11.0        11.0        10.0        10.5
s9   10.561616  0.042522  0.060696  0.069076  0.051668  0.080740      12.0        12.0        12.0        12.0
s12  12.581818  0.046677  0.067138  0.071816  0.052377  0.082932      13.0        13.0        13.0        13.0
******---******---******---******---******---******---******---******---******---******---
           COD        b1        b2        b3        b4        b5
s10   2.828283  0.048858  0.057816  0.077516  0.056419  0.081748
s4    5.858586  0.038918  0.054270  0.070237  0.049240  0.063075
s1    6.246465  0.033064  0.044745  0.063753  0.046467  0.061651
s7    7.022222  0.043152  0.056629  0.072561  0.052936  0.070106
s3    7.151515  0.034787  0.044034  0.068569  0.047349  0.062583
s2    7.300000  0.032765  0.040027  0.060715  0.047964  0.062193
s6    7.458586  0.044111  0.055397  0.075133  0.052282  0.067838
s5    7.458586  0.037524  0.047527  0.065471  0.046837  0.060580
s8    7.846465  0.044698  0.061596  0.073882  0.053898  0.073508
s11   8.492929  0.041209  0.058360  0.070019  0.053007  0.095129
s11   8.492929  0.041209  0.058360  0.070019  0.053007  0.095129
s9   10.561616  0.042522  0.060696  0.069076  0.051668  0.080740
s12  12.581818  0.046677  0.067138  0.071816  0.052377  0.082932
******---******---******---******---******---******---******---******---******---******---
          COD        b1
0    2.828283  0.048858
1    5.858586  0.038918
2    6.246465  0.033064
3    7.022222  0.043152
4    7.151515  0.034787
5    7.300000  0.032765
6    7.458586  0.081635
7    7.846465  0.044698
8    8.492929  0.082418
9   10.561616  0.042522
10  12.581818  0.046677

进程已结束,退出代码为 0

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值