【Pandas】Pandas를 가져올 때의 에러 대응
소개
여러분, 안녕하세요. @Raphael_de_murl 입니다. 이번 기사는 이론적인 정보 공유보다는 에러 메세지의 대응에 대해 소개시키고 싶습니다.
어떤 오류입니까?
기사의 제목대로 Pandas에 관한 에러 대응이 됩니다. 기계 학습을 공부하고 있는 분이라면 한번은 하는 주가 데이터의 해석입니다. 그 중 Pandas를 가져올 때 발생하는 오류입니다.
pandas_error
froma pandas.io.data import DataReader
이 모듈을 가져오면 이런 오류가 발생합니다.
error_messege
---------------------------------------------------------------------------
ModuleNotFoundError Traceback (most recent call last)
<ipython-input-8-ddc8504c263b> in <module>
----> 1 from pandas.io.data import DataReader
ModuleNotFoundError: No module named 'pandas.io.data'
오류의 원인
그럼, 원래 무엇이 원인으로 이런 에러가 발생했는지를 봅시다.
pandas-datareader 문서
Starting in 0.19.0, pandas no longer supports pandas.io.data or pandas.io.wb, so you must replace your imports from pandas.io with those from pandas_datareader:
과연... 이전까지는 pandas.io의 이름으로 지원했습니다만, pandas의 0.19.0 이후의 버젼에서는 지원이 종료했군요. 대신 pandas_datareader라는 라이브러리를 설치하여 해결할 수있는 것 같습니다. 해보자.
대응
에러의 원인을 파악할 수 있었던 곳에서 나머지는 그 대응이군요. 공식 문서를 보면서 대응해 갑니다. 먼저 pandas_datareader 라이브러리를 설치합니다.
install
pip install pandas-datareader
#こちらはgithubからの最新バージョンのインストールです。
pip install git+https://github.com/pydata/pandas-datareader.git
설치가 완료되면 가져옵니다.
import
from pandas_datareader import DataReader
그러면 오류가 해결되었을 것입니다.
확인
오류가 나오지 않기 때문에 문제가 해결되었다고 말할 수 없습니다. 제대로 가져와 사용하고 싶은 라이브러리가 제대로 움직이는지까지 확인하는 것이 엔지니어의 기본입니다. 한 가지 예로 일부 기업의 정보를 얻고 싶습니다. 그건 그렇고, 테스트 환경은 jupyter NoteBook입니다.
샘플
import pandas as pd
import numpy as np
from pandas import Series, DataFrame
샘플
import matplotlib.pyplot as plt
import seaborn as sns
sns.set_style('whitegrid')
%matplotlib inline
샘플
from pandas_datareader import DataReader
from datetime import datetime
샘플
tech_list = ['AAPL', 'GOOG', 'MSFT', 'AMZN']
샘플
end = datetime.now()
start = datetime(end.year - 1, end.month, end.day)
샘플
for stock in tech_list:
globals()[stock] = DataReader(stock, 'yahoo', start, end)
샘플
AAPL.describe()
여기까지 입력하고 확인하면
이런 식으로 데이터가 제대로 보이면 성공입니다.
종합적으로
엔지니어가 에러 해결이 귀찮게 하거나 하고 싶지 않다는 것은 좋지 않습니다. 제대로 보고 원인을 파악해 해결하는 것이 멋집니다! 그렇지 않을까요? 필자는 그렇게 생각합니다 (웃음)
↓필자가 운용하고 있는 트위터입니다. 흥미있는 분은 꼭 팔로워 부탁드립니다.
AI/기계학습 오빠 트위터
Reference
이 문제에 관하여(【Pandas】Pandas를 가져올 때의 에러 대응), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Raphael_de_murl/items/a24e0c4334d94627cc11텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)