Недавно я пытался обучить некоторые модели на экземпляре ноутбука AWS SageMaker jupyter.
Все работало очень хорошо, пока я не попытался загрузить какой-либо пользовательский набор данных (REDD) через файлы.
У меня есть кадры данных, хранящиеся в файлах Pickle (.pkl) в корзине S3. Мне не удалось прочитать их в sagemaker, поэтому я решил преобразовать их в csv, так как это, похоже, работало, но я столкнулся с проблемой. Эти данные имеют индекс типа datetime64, и при использовании .to_csv()
этот индекс преобразуется в чистый текст, и он теряет свою структуру данных (и мне нужно сохранить этот конкретный индекс для правильного построения.)
Поэтому я решил снова попробовать файлы Pickle, но не могу заставить его работать и не знаю почему.
Следующий код для работ CSV, но я не могу использовать его из-за проблемы с индексом:
bucket = 'sagemaker-peno'
houses_dfs = {}
data_key = 'compressed_data/'
data_location = 's3://{}/{}'.format(bucket, data_key)
for file in range(6):
houses_dfs[file+1] = pd.read_csv(data_location+'house_'+str(file+1)+'.csv', index_col='Unnamed: 0')
Но этот код НЕ работает, даже если он использует почти такой же синтаксис:
bucket = 'sagemaker-peno'
houses_dfs = {}
data_key = 'compressed_data/'
data_location = 's3://{}/{}'.format(bucket, data_key)
for file in range(6):
houses_dfs[file+1] = pd.read_pickle(data_location+'house_'+str(file+1)+'.pkl')
Да, это 100% правильный путь, потому что файлы csv и pkl хранятся в одном каталоге (сжатые_данные).
Это выдает мне эту ошибку при использовании метода Pickle:
FileNotFoundError: [Errno 2] No such file or directory: 's3://sagemaker-peno/compressed_data/house_1.pkl'
Я надеюсь найти кого-то, кто имел дело с этим раньше и может решить проблему read_pickle()
или, в качестве альтернативы, исправить мою проблему типа datetime64 с помощью csv.
Заранее спасибо!