pandas學習:對series和dataframe進行排序
阿新 • • 發佈:2019-01-03
本問主要寫根據索引或者值對series和dataframe進行排序的方法
程式碼:
#coding=utf-8 import pandas as pd import numpy as np #以下實現排序功能。 series=pd.Series([3,4,1,6],index=['b','a','d','c']) frame=pd.DataFrame([[2,4,1,5],[3,1,4,5],[5,1,4,2]],columns=['b','a','d','c'],index=['one','two','three']) print frame print series print 'series通過索引進行排序:' print series.sort_index() print 'series通過值進行排序:' print series.sort_values() print 'dataframe根據行索引進行降序排序(排序時預設升序,調節ascending引數):' print frame.sort_index(ascending=False) print 'dataframe根據列索引進行排序:' print frame.sort_index(axis=1) print 'dataframe根據值進行排序:' print frame.sort_values(by='a') print '通過多個索引進行排序:' print frame.sort_values(by=['a','c'])
實驗結果:
b a d c
one 2 4 1 5
two 3 1 4 5
three 5 1 4 2
b 3
a 4
d 1
c 6
dtype: int64
series通過索引進行排序:
a 4
b 3
c 6
d 1
dtype: int64
series通過值進行排序:
d 1
b 3
a 4
c 6
dtype: int64
dataframe根據行索引進行降序排序(排序時預設升序,調節ascending引數):
b a d c
two 3 1 4 5
three 5 1 4 2
one 2 4 1 5
dataframe根據列索引進行排序:
a b c d
one 4 2 5 1
two 1 3 5 4
three 1 5 2 4
dataframe根據值進行排序:
b a d c
two 3 1 4 5
three 5 1 4 2
one 2 4 1 5
通過兩個索引進行排序:
b a d c
three 5 1 4 2
two 3 1 4 5
one 2 4 1 5
[Finished in 1.0s]