In [1]:
import numpy as np
import pandas as pd

from pandas import DataFrame, Series

In [2]:
serieA = Series(np.arange(6),index=['A','B','C','D','E','F'])

In [3]:
serieA


Out[3]:
A    0
B    1
C    2
D    3
E    4
F    5
dtype: int64

In [4]:
serieA['E'] #selecionar el elemento E


Out[4]:
4

In [5]:
serieA[1:4] #seleccionar por rango o slice


Out[5]:
B    1
C    2
D    3
dtype: int64

In [6]:
serieA[['B','F','A','R']] #Seleccionar por indice, en el caso de R, el retorno sera NaN


Out[6]:
B    1.0
F    5.0
A    0.0
R    NaN
dtype: float64

In [7]:
serieA[serieA>4] # Seleccionar por condición


Out[7]:
F    5
dtype: int64

In [8]:
serieA[serieA>3]= 0 #Seleccionar por condición y asignar un valor

In [9]:
ind = list('ABCDEFGHIJ') # Definir indices

c = list('WXYZ')  # Definir columnas

df = DataFrame(np.random.randint(100, size=40).reshape(10,4),index=ind,columns=c)

df


Out[9]:
W X Y Z
A 85 38 19 42
B 6 35 65 92
C 34 13 88 76
D 89 78 24 92
E 48 82 67 76
F 90 77 39 31
G 86 93 12 99
H 10 1 50 92
I 12 47 28 47
J 58 14 19 71

In [10]:
df


Out[10]:
W X Y Z
A 85 38 19 42
B 6 35 65 92
C 34 13 88 76
D 89 78 24 92
E 48 82 67 76
F 90 77 39 31
G 86 93 12 99
H 10 1 50 92
I 12 47 28 47
J 58 14 19 71

In [11]:
df[1:5] # Seleccionar los registros por slice de 1 a 5


Out[11]:
W X Y Z
B 6 35 65 92
C 34 13 88 76
D 89 78 24 92
E 48 82 67 76

In [12]:
df[df['W']<=10] # Seleccionar por condición


Out[12]:
W X Y Z
B 6 35 65 92
H 10 1 50 92

In [13]:
df > 50 # Mostrar entradas mayores a 50


Out[13]:
W X Y Z
A True False False False
B False False True True
C False False True True
D True True False True
E False True True True
F True True False False
G True True False True
H False False False True
I False False False False
J True False False True

In [14]:
df.ix['E'] #Seleccionar un index


Out[14]:
W    48
X    82
Y    67
Z    76
Name: E, dtype: int64

In [15]:
df.ix[4] # Seleccionar un index


Out[15]:
W    48
X    82
Y    67
Z    76
Name: E, dtype: int64

In [16]:
df.ix[0::2] # Seleccionar  índice por slice de dos en dos


Out[16]:
W X Y Z
A 85 38 19 42
C 34 13 88 76
E 48 82 67 76
G 86 93 12 99
I 12 47 28 47

In [17]:
df.ix[0:5,'X'] # Seleccionar slice los índices de 0 a 5, la columna 'X'


Out[17]:
A    38
B    35
C    13
D    78
E    82
Name: X, dtype: int64

In [18]:
df.ix[0:5,['X','W']] # Seleccionar slice los índices de 0 a 5, multiples columnas


Out[18]:
X W
A 38 85
B 35 6
C 13 34
D 78 89
E 82 48