sort_values
含义:
sort_values()函数,可以将数据集依照某个字段中的数据进行排序,该函数即可根据指定列数据也可根据指定行的数据排序。
参数说明:
# 参数
DataFrame.sort_values(by,axis = 0,ascending = True,inplace = False,kind =' quicksort ',na_position ='last' )
#参数说明
by: str或str的列表,如果axis=0或axis='index',那么by='列名';如果axis=1或axis='columns',那么by='行名'
axis: {0或'index';1或'columns'} 默认为0,即纵向排序,如果为1,则为横向排序
ascending: 布尔型,默认为True,即升序
inplace: 布尔型,是否用排序后的数据代替现有数据
kind: 排序算法, {'quicksort','mergesort','heapsort'},默认'quicksort'
na_position: {'first','last'},默认'last' ,即将缺失值放在最后。
例子:
import pandas as pd
import numpy as np
frame = pd.DataFrame(np.arange(12).reshape((3,4)),
columns=list('ABCD'))
# 沿着A列方向倒向排序
frame1 = frame.sort_values(by='A',ascending=False)
print('\nframe1:')
print(frame1)
========output========
frame1:
A B C D
2 8 9 10 11
1 4 5 6 7
0 0 1 2 3
# 沿着索引为1的行方向倒向排序
frame2 = frame.sort_values(by= 1,axis=1,ascending=False)
print('\nframe2:')
print(frame2)
========output========
frame2:
D C B A
0 3 2 1 0
1 7 6 5 4
2 11 10 9 8
set_index
含义:
重新设置某一列或多个列作为索引
参数说明:
# 参数
DataFrame.set_index(keys, drop=True, append=False, inplace=False, verify_integrity=False)
#参数说明
key: 要用做新索引的列的索引名
drop: 布尔值,默认为True,即删除要用作新索引的列
append: 布尔值,默认为False,是否将列附加到现有索引即默认情况下是将原有索引替代,为True时,原有索引不会被删除,现在要添加的索引会被附加在原有索引后。生成一个二层索引
inplace: 布尔值,默认为False,即是否修改原数据
verify_integrity: 布尔值, 默认False,检查新索引是否有重复项。为True时,如果新索引有重复项,Python会报错。
例子:
import pandas as pd
import numpy as np
frame = pd.DataFrame(np.arange(12).reshape((3,4)),
columns=list('ABCD'))
# 设置列'C'和'D'为索引,同时不删除'C'和'D'列
frame1 = frame.set_index(['C','D'],drop=False)
print('\nframe1')
print(frame1)
========output========
frame1:
A B C D
C D
2 3 0 1 2 3
6 7 4 5 6 7
10 11 8 9 10 11
reset_values
含义:
reset_values是set_index的反操作,会将索引移动到列中