Я пытаюсь прочитать CSV-файл, используя dask (также pandas), но я получаю сообщение об ошибке ниже. Я пытался изменить форматы кодирования, но ничего не работает.но когда я сохраняю как CSV ut8
в Excel, код начинает работать.То же самое я попробовал с пандами и выдает мне ту же ошибку. Я попытался явно указать кодировку как utf-16
, но он получил ошибку, говоря, что требуется использовать utf-16-le or utf-16-be
.когда я использовал также я получил ошибки.Что-то не так с файлом CSV, который я использую?
import dask.dataframe as dd
with open(Mar_N_W, 'rb') as f:
result = chardet.detect(f.read())
Mar_NW = dd.read_csv(Mar_N_W,encoding=result['encoding'],sep=None)
~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\io\parsers.py in _next_iter_line(self, row_num)
2693
2694 try:
-> 2695 return next(self.data)
2696 except csv.Error as e:
2697 if self.warn_bad_lines or self.error_bad_lines:
~\AppData\Local\Continuum\anaconda3\lib\codecs.py in decode(self, input, final)
320 # decode input (taking the buffer into account)
321 data = self.buffer + input
--> 322 (result, consumed) = self._buffer_decode(data, self.errors, final)
323 # keep undecoded input until the next call
324 self.buffer = data[consumed:]
~\AppData\Local\Continuum\anaconda3\lib\encodings\utf_16.py in _buffer_decode(self, input, errors, final)
67 raise UnicodeError("UTF-16 stream does not start with BOM")
68 return (output, consumed)
---> 69 return self.decoder(input, self.errors, final)
70
71 def reset(self):
UnicodeDecodeError: 'utf-16-le' codec can't decode byte 0x0a in position 0: truncated data