다음 코드가 있지만 파이썬 3은 수직 파이프를 유니 코드 문자로 인식하지 않습니다.
m_cols = ['movie_id', 'title', 'release_date',
'video_release_date', 'imdb_url']
movies = pd.read_csv(
'http://files.grouplens.org/datasets/movielens/ml-100k/u.item',
sep='|', names=m_cols, usecols=range(5))
movies.head()
다음과 같은 오류가 발생합니다.
UnicodeDecodeError Traceback (most recent call
last)
pandas\_libs\parsers.pyx in
pandas._libs.parsers.TextReader._convert_tokens
(pandas\_libs\parsers.c:14858)()
pandas\_libs\parsers.pyx in
pandas._libs.parsers.TextReader._convert_with_dtype
(pandas\_libs\parsers.c:17119)()
pandas\_libs\parsers.pyx in
pandas._libs.parsers.TextReader._string_convert
(pandas\_libs\parsers.c:17347)()
pandas\_libs\parsers.pyx in pandas._libs.parsers._string_box_utf8
(pandas\_libs\parsers.c:23041)()
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 3:
invalid continuation byte
During handling of the above exception, another exception occurred:
UnicodeDecodeError Traceback (most recent call
last)
<ipython-input-15-72a8222212c1> in <module>()
4 movies = pd.read_csv(
5 'http://files.grouplens.org/datasets/movielens/ml-100k/u.item',
----> 6 sep='|', names=m_cols, usecols=range(5))
7
8 movies.head()
이것의 가능한 이유는 무엇이며 어떻게 해결할 수 있습니까?
python3에서는 다음을 사용하십시오 encoding="latin-1"
.
In [9]: movies = pd.read_csv(
'http://files.grouplens.org/datasets/movielens/ml-100k/u.item',
sep='|', names=m_cols, usecols=range(5), header=None, encoding="latin-1")
In [10]: movies.head()
Out[10]:
movie_id title release_date video_release_date \
0 1 Toy Story (1995) 01-Jan-1995 NaN
1 2 GoldenEye (1995) 01-Jan-1995 NaN
2 3 Four Rooms (1995) 01-Jan-1995 NaN
3 4 Get Shorty (1995) 01-Jan-1995 NaN
4 5 Copycat (1995) 01-Jan-1995 NaN
imdb_url
0 http://us.imdb.com/M/title-exact?Toy%20Story%2...
1 http://us.imdb.com/M/title-exact?GoldenEye%20(...
2 http://us.imdb.com/M/title-exact?Four%20Rooms%...
3 http://us.imdb.com/M/title-exact?Get%20Shorty%...
4 http://us.imdb.com/M/title-exact?Copycat%20(1995)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다