In [2]:
import pandas as pd

In [3]:
import numpy as np

In [4]:
from pandas import DataFrame, Series

In [5]:
obj = Series(range(4), index=['d', 'a', 'b', 'c'])

In [6]:
obj.sort_index()


Out[6]:
a    1
b    2
c    3
d    0
dtype: int64

In [7]:
frame = DataFrame(np.arange(8).reshape((2, 4)), 
                  index=['three', 'one'], columns=['d', 'a', 'b', 'c'])

In [8]:
frame


Out[8]:
d a b c
three 0 1 2 3
one 4 5 6 7

In [9]:
frame.sort_index(axis=1, ascending=False)


Out[9]:
d c b a
three 0 3 2 1
one 4 7 6 5

In [10]:
obj = Series([4,7,-3,2])

In [13]:
obj.sort_values()


Out[13]:
2   -3
3    2
0    4
1    7
dtype: int64

In [14]:
obj = Series([4, np.nan, 7, np.nan, -3, 2])

In [16]:
obj.sort_values()


Out[16]:
4   -3.0
5    2.0
0    4.0
2    7.0
1    NaN
3    NaN
dtype: float64

In [17]:
frame = DataFrame({'b': [4, 7, -3, 2], 'a': [0, 1, 0, 1]})

In [19]:
frame.sort_values(by=['a', 'b'])


Out[19]:
a b
2 0 -3
0 0 4
3 1 2
1 1 7

In [22]:
obj = Series([7, -5, 7, 4, 2, 0, 4])

In [23]:
obj.rank()


Out[23]:
0    6.5
1    1.0
2    6.5
3    4.5
4    3.0
5    2.0
6    4.5
dtype: float64

In [24]:
obj.rank(method='first')


Out[24]:
0    6.0
1    1.0
2    7.0
3    4.0
4    3.0
5    2.0
6    5.0
dtype: float64

In [25]:
obj.rank(ascending=False, method='max')


Out[25]:
0    2.0
1    7.0
2    2.0
3    4.0
4    5.0
5    6.0
6    4.0
dtype: float64

In [26]:
frame = DataFrame({'b': [4.3, 7, -3, 2], 
                   'a': [0, 1, 0, 1], 'c': [-2, 5, 8, -2.5]})

In [27]:
frame


Out[27]:
a b c
0 0 4.3 -2.0
1 1 7.0 5.0
2 0 -3.0 8.0
3 1 2.0 -2.5

In [28]:
frame.rank(axis=1)


Out[28]:
a b c
0 2.0 3.0 1.0
1 1.0 3.0 2.0
2 2.0 1.0 3.0
3 2.0 3.0 1.0

In [30]:
obj


Out[30]:
a    0
a    1
b    2
b    3
c    4
dtype: int64

In [29]:
obj = Series(range(5), index=['a', 'a', 'b', 'b', 'c'])

In [30]:
obj


Out[30]:
a    0
a    1
b    2
b    3
c    4
dtype: int64

In [31]:
obj.index.is_unique


Out[31]:
False

In [32]:
obj['a']


Out[32]:
a    0
a    1
dtype: int64

In [33]:
obj['c']


Out[33]:
4

In [34]:
df = DataFrame(np.random.randn(4, 3), index=['a', 'a', 'b', 'b'])

In [35]:
df


Out[35]:
0 1 2
a -0.012099 1.681880 -0.043925
a -1.984725 -0.095814 -0.458118
b -1.054421 1.009381 2.239380
b -1.136733 0.548977 -0.177885

In [36]:
df.ix['b']


Out[36]:
0 1 2
b -1.054421 1.009381 2.239380
b -1.136733 0.548977 -0.177885

In [ ]: