Я не могу прочитать данные в Pandas: Ввод:
import pandas as pd
data = 'a,b,c\n1,2,3\n4,5,6'
pd.read_csv(StringIO(data),skipinitialspace=True)
Выход:
NameError:name 'StringIO' is not defined
Сообщите мне, почему произошла ошибка, а также сообщите, что импортировать.
4 ответа
Нашел решение здесь:
Ошибка произошла из-за того, что я не импортировал StringIO
. В отличие от Python 2, в Python 3 вам необходимо импортировать его.
from io import StringIO
После импорта ошибок не произошло. Вывод на вышеуказанный вопрос был:
a b c
0 1 2 3
1 4 5 6
Его также можно импортировать из pandas.compat
, который работает как для Python 2, так и для Python 3.
from pandas.compat import StringIO
StringIO
).
Это потому, что он был удален в Python 3 для лучшего модуля.
Модули
StringIO
иcStringIO
исчезли. Вместо этого импортируйте модульio
и используйтеio.StringIO
илиio.BytesIO
для текста и данных соответственно.
try:
from StringIO import StringIO
except ImportError:
from io import StringIO
StringIO необходимо импортировать как import StringIO
, прежде чем его можно будет использовать
РЕДАКТИРОВАТЬ: ссылка для получения дополнительной информации: https://docs.python.org/2/library/stringio .html
Попробуйте добавить следующие пакеты. Эти пакеты должны добавить эту строку в начало вашего скрипта.
import io
from io import StringIO
import string
import pandas as pd
from pandas.compat import StringIO
from collections import Counter
try:
from StringIO import StringIO
except ImportError:
from io import StringIO
После добавления вышеуказанных пакетов я не получаю ошибку ниже
ModuleNotFoundError: No module named 'StringIO'
Похожие вопросы
Связанные вопросы
Новые вопросы
python
Python — это мультипарадигмальный многоцелевой язык программирования с динамической типизацией. Он предназначен для быстрого изучения, понимания и использования, а также обеспечивает чистый и унифицированный синтаксис. Обратите внимание, что Python 2 официально не поддерживается с 01.01.2020. Если у вас есть вопросы о версии Python, добавьте тег [python-2.7] или [python-3.x]. При использовании варианта Python (например, Jython, PyPy) или библиотеки (например, Pandas, NumPy) укажите это в тегах.