python数据选择与运算(4)数值排序

笔记

数值排序与排名

        函数语法:

        sort_values(by,axis=0,ascending=True,inplace=False,kind='quicksort',na_position='last',ignore_index=False,key: ValueKeyFunc'= None)

        参数说明:

by:要排序的名称列表

axis:轴,0代表行,1代表列,默认是0

ascending: 升序或者降序,布尔值,指定多个排序就可以使用布尔值列表,默认是True

inplace: 布尔值,默认是False,如果值为True,则就地排序

kind: 指定排序算法,值为quicksort(快速排序)、mergesort(混合排序)或heapsort(堆排),默认值为quicksort

na_position: 空值(NaN)的位置,值为first空值在数据开头,值为last空值在数据最后,默认为last

ignore_index: 布尔值,是否忽略索引,值为True标记索引(从0开始按顺序的整数值),值为False则忽略索引

        [例]

        根据给定DataFrame按照索引名列名和数据进行排序

        关键技术:sort values()方法可以根据指定行/列进行排序。

        1.按照索引名排序。注意sort_index()方法的axis参数默认为0

        2.按照column列名排序

        3.axis表示按照行或者列,asceding表=True升序,False为降序,by表示排序的列名

        4.按照数据进行排序,首先按照D列进行升序排列

        5.按照数据进行排序,首先按照C列进行降序排序,在C列相同的情况下,按照B列进行升序排序

import pandas as pd
data_list=[[1,2,3],[1,5,4],[3,7,9],[6,8,5]]
df=pd.DataFrame(data_list,columns=['c','B','D'])
df.index=['x','z','y','y']
print(df)

print()

#1.
df_sort_axis0 = df.sort_index()
print('1.data after sort index')
print(df_sort_axis0)

print()

#2.
df_sort_axisl = df.sort_index(axis=1)
print('2.data after sort_index(axis = 1) :')
print(df_sort_axisl)

print()

#3.
df_sort_axisl_descend = df.sort_index(axis=1,ascending=False)
print('3.data after sort_index(axis = 1,ascending=False):')
print(df_sort_axisl_descend)

print()

#4.
df_data_order0 = df.sort_values(by=['D'],ascending=[True])
print('4.data after sort values sorted by D:')
print(df_data_order0)

print()

#5.
df_data_orderl = df.sort_values(by=['c','B'],ascending=[False,True])
print('5.data after sort values:')
print(df_data_orderl)

python数据选择与运算(4)数值排序_第1张图片

你可能感兴趣的:(python,开发语言)