#machine-learning #ftp #gzip #finance #orderbook
Вопрос:
Я пробую свои первые шаги в ML, используя IPython Jupter, мне посоветовали начать с набора данных Nasdaq order book ITCH для создания моделей. Я выполняю те же действия, что и в этом уроке на github.
Я не могу распаковать/развернуть файлы из набора данных ITCH при выполнении функции may_be_download(url)
и следующего кода (ячейка кода № 5 в учебнике).:
file_name = may_be_download(urljoin(FTP_URL, SOURCE_FILE))
date = file_name.name.split('.')[0]
Я получаю следующую ошибку; Ошибка EOFError: Сжатый файл закончился до того, как был достигнут маркер конца потока
Я также не могу просто распаковать файл, нажав на него в Finder или используя gzip
amp; gunzip
методы в терминале.
Я предпринял следующие шаги:
- Выполнил все предыдущие ячейки кода (1-4)
- Скопировал файл
03272019.NASDAQ_ITCH50.gz
в папку, указаннуюdata
в относительном пути- Сначала я пошел, щелкнул по ссылке с образцом в блокноте
- Затем вошел в систему как гость и перешел в папку
Nasdaq ITCH
- Затем нашел файл
03272019.NASDAQ_ITCH50.gz
и скопировал его в локальную папку.
- Ячейка с выполненным кодом № 5, перечисленная выше.
Я искал и пробовал множество решений аналогичных проблем, перечисленных здесь, в стеке и на Github, но, похоже, ни одно из них не решает эту конкретную проблему. Я был бы глубоко признателен за любую помощь и мысли о том, что может произойти и как я мог бы решить эту проблему.
Я оставлю вам изображение журналов ошибок, предполагая, что это может вам помочь
Спасибо за чтение.
Ответ №1:
Я скачал этот файл и еще один с этого сайта. Они оба, по-видимому, повреждены, оба не справляются с неполными данными дефляции.
Более того, там есть подписи MD5 для файлов, и то, что загружается, имеет подписи MD5, которые не совпадают.
Это не вызвано тем, что ftp-сервер выполняет преобразования в конце строки, поскольку длина файла в байтах точно совпадает с длиной на сервере. Также гистограмма значений байтов не показывает смещения.