Loading...
yana_neykova avatar yana_neykova 3 Точки

Read files / Exam project task

Здравейте,

Заела съм се да правя проекта за изпита за курса Data Science. Като цяло имам идея какво да правя, и съм си нахвърлила няколко реда.

Но като започнах да ги run-вам , забих на първия :Х При четенето на файла с данните, постоянно ми излизат грешки. 

Ето и редовете код:

%matplotlib inline
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import scipy as sp
food_data = pd.read_csv('data\en.openfoodfacts.org.products.txt',sep='\t')

Ето и грешката, която получавам:

---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
<ipython-input-3-f0c1ca3484c0> in <module>()
----> 1 food_data = pd.read_csv('data\en.openfoodfacts.org.products.txt',sep='\t')
~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\io\parsers.py in parser_f(filepath_or_buffer, sep, delimiter, header, names, index_col, usecols, squeeze, prefix, mangle_dupe_cols, dtype, engine, converters, true_values, false_values, skipinitialspace, skiprows, nrows, na_values, keep_default_na, na_filter, verbose, skip_blank_lines, parse_dates, infer_datetime_format, keep_date_col, date_parser, dayfirst, iterator, chunksize, compression, thousands, decimal, lineterminator, quotechar, quoting, escapechar, comment, encoding, dialect, tupleize_cols, error_bad_lines, warn_bad_lines, skipfooter, doublequote, delim_whitespace, low_memory, memory_map, float_precision)
    676                     skip_blank_lines=skip_blank_lines)
    677
--> 678         return _read(filepath_or_buffer, kwds)
    679
    680     parser_f.__name__ = name
~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\io\parsers.py in _read(filepath_or_buffer, kwds)
    438
    439     # Create the parser.
--> 440     parser = TextFileReader(filepath_or_buffer, **kwds)
    441
    442     if chunksize or iterator:
~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\io\parsers.py in __init__(self, f, engine, **kwds)
    785             self.options['has_index_names'] = kwds['has_index_names']
    786
--> 787         self._make_engine(self.engine)
    788
    789     def close(self):
~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\io\parsers.py in _make_engine(self, engine)
   1012     def _make_engine(self, engine='c'):
   1013         if engine == 'c':
-> 1014             self._engine = CParserWrapper(self.f, **self.options)
   1015         else:
   1016             if engine == 'python':
~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\io\parsers.py in __init__(self, src, **kwds)
   1706         kwds['usecols'] = self.usecols
   1707
-> 1708         self._reader = parsers.TextReader(src, **kwds)
   1709
   1710         passed_names = self.names is None
pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader.__cinit__()
pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader._setup_parser_source()
FileNotFoundError: File b'data\\en.openfoodfacts.org.products.txt' does not exist
 

Тъй като файла е tsv, пробвах и да го прочета като такъв ( грепката е една и съща с read_csv & read_table ) "

food_data = pd.read_table('en.openfoodfacts.org.products.tsv',sep='\t').  Тогава получавам следната грешка :

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte

 

Къде бъркам? Досега не съм имала проблеми с четенето на файлове....Благодаря предварително!

Тагове:
0
Data Science
yana_neykova avatar yana_neykova 3 Точки

И аз това си помислих в началото..... но пробвах и с обърнати черти, + пробвах файла и скрипта да са ми в една и съща папка и отново получавамммм грешка, че файлът не съществува. 

0
g.stoyanov avatar g.stoyanov 776 Точки

Здравей,

Виждам, че в първия пример името на файла ти е :

en.openfoodfacts.org.products.txt

а във втория, който вече намира такъв файл, е :

en.openfoodfacts.org.products.tsv

според мен първия проблем, този който казва че не намира файла, е породен от объркан тип вместо tsv е написан като txt.

Относно грешката с декода, провери какъв енкодинг е файла, и го подай на четящата функция. Например: 

food_data = pd.read_csv('data\en.openfoodfacts.org.products.tsv', sep='\t', encoding = "cp1252")

Пожелавам ти успех :)

0
yana_neykova avatar yana_neykova 3 Точки

Здравей, за вида на файла - да, играх си малко с идеята ако това помомгне...но уви. Енкодинг-а не се бях сетила да проверя. 

Проблемът се оказа в самия файл - изтеглих го наново и тръгна . 

Благодаря и хубав ден! :)

 

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.