python3 中的sort_values函数

首先 这个函数是对列进行排序的 即对values进行排序

单列的大家都明白 这里我们讨论下多列的

举个例子

df = pd.DataFrame({
 'col1' : ['A', 'A', 'B', np.nan, 'D', 'C'],
    'col2' : [2, 1, 9, 8, 7, 4],
   'col3': [0, 1, 9, 4, 2, 3],})
print(df)
输出为
  col1  col2  col3
0    A     2     0
1    A     1     1
2    B     9     9
3  NaN     8     4
4    D     7     2
5    C     4     3

则 利用sort_values 

df.sort_values(by=['col1'])
    col1 col2 col3
0   A    2    0
1   A    1    1
2   B    9    9
5   C    4    3
4   D    7    2
3   NaN  8    4


如果两个values呢 

import pandas as pd
import numpy as np
df = pd.DataFrame({
  'col1' : [ 'A', 'E','A','A','A' ,'B', np.nan, 'D', 'C'],
    'col2' : [2, 1, 12, 23, 5,  9, 8, 7, 4],
    'col3':  [0, 11, 14, 18, 28, 9, 4, 2, 3],})
  col1  col2  col3
0    A     2     0
1    E     1    11
2    A    12    14
3    A    23    18
4    A     5    28
5    B     9     9
6  NaN     8     4
7    D     7     2
8    C     4     3
通过函数输出为
import pandas as pd
import numpy as np
df = pd.DataFrame({
  'col1' : [ 'A', 'E','A','A','A' ,'B', np.nan, 'D', 'C'],
    'col2' : [2, 1, 12, 23, 5,  9, 8, 7, 4],
    'col3':  [0, 11, 14, 18, 28, 9, 4, 2, 3],})
            
a=df.sort_values(by=['col1', 'col2'])
print(a)
  col1  col2  col3
0    A     2     0
4    A     5    28
2    A    12    14
3    A    23    18
5    B     9     9
8    C     4     3
7    D     7     2
1    E     1    11
6  NaN     8     4


看出连个values的功能是啥了吗 这里我们多弄了几个A 因为这个函数的意思就是

我先通过

by=['col1', 'col2'] 中的col1进行排序

拍完之后为A B C D E等 

然后再根据col1拍完的顺序排从col2 这里就是如果A B...E排完 在A的前提下在排列col2 即A 排列col2 

B排列col2 一直到E


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值