Estoy usando PyCharm (1.5.4) como mi pitón IDE en MacOS 10.6.4. Estoy retocando con algún código para manipular los precios de los precios. Como parte de eso, quiero importar datos de precios de yahoo utilizando la función DataReader que viene con Pandas 0.6.0. El código es el siguiente:PyCharm (1.5.4) y Pandas 0.6.0 - ImportError: Ningún módulo llamado data
http://www.statalgo.com/2011/09/08/pandas-getting-financial-data-from-yahoo-fred-etc/
from pandas import ols, DataFrame
from pandas.stats.moments import rolling_std
from pandas.io.data import DataReader
import datetime
sp500 = DataReader("^GSPC", "yahoo", start=datetime.datetime(1990, 1, 1))
sp500_returns = sp500["adj clos"].shift(-250)/sp500["adj clos"] - 1
gdp = DataReader("GDP", "fred", start=datetime.datetime(1990, 1, 1))["value"]
gdp_returns = (gdp/gdp.shift(1) - 1)
gdp_std = rolling_std(gdp_returns, 10)
gdp_standard = gdp_returns/gdp_std
gdp_on_sp = ols(y=sp500_returns, x=DataFrame({"gdp": gdp_standard}))
sp500.plot()
gdp.plot()
Cuando ejecuto el código me sale el siguiente error:
Traceback (most recent call last):
File "/Users/MyName/PycharmProjects/test/mytest", line 3, in <module>
from pandas.io.data import DataReader
ImportError: No module named data
veo que PyCharm no sabe cómo unresolve la referencia de datos ' '.
Mis caminos pitón se establecen como sigue:
import sys
from pprint import pprint as pp
pp(sys.path)
['/private/var/folders/st/stQUFIfOG28bmpY9dCspTk+++TI/-Tmp-',
'/Library/Frameworks/EPD64.framework/Versions/7.1/lib/python2.7/site-packages/scikits.statsmodels-0.3.1-py2.7.egg',
'/Library/Frameworks/EPD64.framework/Versions/7.1/lib/python27.zip',
'/Library/Frameworks/EPD64.framework/Versions/7.1/lib/python2.7',
'/Library/Frameworks/EPD64.framework/Versions/7.1/lib/python2.7/plat-darwin',
'/Library/Frameworks/EPD64.framework/Versions/7.1/lib/python2.7/plat-mac',
'/Library/Frameworks/EPD64.framework/Versions/7.1/lib/python2.7/plat-mac/lib-scriptpackages',
'/Library/Frameworks/EPD64.framework/Versions/7.1/lib/python2.7/lib-tk',
'/Library/Frameworks/EPD64.framework/Versions/7.1/lib/python2.7/lib-old',
'/Library/Frameworks/EPD64.framework/Versions/7.1/lib/python2.7/lib-dynload',
'/Library/Frameworks/EPD64.framework/Versions/7.1/lib/python2.7/site-packages',
'/Library/Frameworks/EPD64.framework/Versions/7.1/lib/python2.7/site-packages/PIL']
Lo que es desconcertante es que PyCharm puede resolver pandas.stats.moments pero no puede resolver pandas.io.data. Comprobé que ambos directorios tienen el archivo __init__.py
(los archivos están en blanco).
En este momento no estoy seguro de cómo seguir adelante. Apreciamos enormemente la ayuda.
ACTUALIZACIÓN:
$ cat __egginst__.txt
# egginst metadata
egg_name = 'pandas-0.3.0-3.egg'
prefix = '/Library/Frameworks/EPD64.framework/Versions/7.1'
installed_size = 1454562
rel_files = [
'EGG-INFO/pandas/__egginst__.txt',
'lib/python2.7/site-packages/pandas-0.3.0-3.egg-info',
Comprueba que está importando la versión correcta de pandas, haciendo 'import pandas' y' pandas .__ version__'. –
@ThomasK - Borré la versión 0.3 antes de instalar panda 0.6.0. Acabo de comprobar el __egginst__. Txt file en la carpeta EGG-INFO y la información sobre la versión anterior aparece en lugar de 0.6.0. Vea cortar y pegar la salida de este archivo en la publicación original actualizada. – codingknob
Quise decir el archivo '__egginst __. Txt'. ¿Es tan simple como editar este archivo y cambiar la versión y el directorio del paquete del sitio? Me pregunto por qué este archivo no se actualizó cuando instalé pandas 0.6.0. – codingknob