2012-08-17 22 views
5

Soy absolutamente nuevo para Python y Panda, y aunque he revisado la documentación, no entiendo la forma correcta de indexar un Panda DataFrame. Me gustaría dividir un DataFrame lleno de precios de acciones por sus respectivos valores iniciales con el fin de indexar las diferentes acciones a 100. Quiero usar esto para comparar su rendimiento. La trama de datos es el siguiente:Python: Pandas Divide DataFrame en la primera fila

>>> IndexPrices 
<class 'pandas.core.frame.DataFrame'> 
DatetimeIndex: 157 entries, 1999-12-31 00:00:00 to 2012-12-31 00:00:00 
Freq: M 
Data columns: 
MSCI WORLD :G U$      148 non-null values 
S&P 500 COMPOSITE      148 non-null values 
DAX 30 PERFORMANCE      148 non-null values 
RUSSELL 2000       148 non-null values 
FTSE 100        148 non-null values 
US Treasury Bond Yields 30 Year Bond 148 non-null values 
dtypes: float64(6) 

Hasta ahora he metido un poco con cosas como esta, pero no está poniendo a ninguna parte ...

IndexPrices.divide(IndexPrices[0:1]) 

Gracias por su ayuda chicos!

Respuesta

12
In [193]: df 
Out[193]: 
    A B C D 
a 1 8 9 1 
b 5 4 3 6 
c 4 6 1 3 
d 1 0 2 9 

In [194]: df.divide(df.ix[0]/100) 
Out[194]: 
    A B   C D 
a 100 100 100.000000 100 
b 500 50 33.333333 600 
c 400 75 11.111111 300 
d 100 0 22.222222 900 
Cuestiones relacionadas