Эта ошибка возникает, когда файл .npy поврежден, возможно, обрезан. Существует несоответствие между формой, определенной в заголовке файла, и фактическим объемом данных в файле. Об этом говорится в комментарии к этому вопросу .
Проблема в этом конкретном сценарии заключается в том, что os.listdir
возвращает массив со всеми именами файлов внутри указанного пути, а не полным путем к каждому файлу. Таким образом, при попытке загрузить массив из переменной file
он может пытаться загрузить поврежденный существующий файл в текущей папке, но не ожидаемый. Если файл не существует, numpy throws FileNotFoundError
.
Это можно исправить с помощью os.path.join
и объедините имя файла и полный путь, или с помощью glob
:
import glob
...
for file in glob.glob("/Users/sjakober/Documents/ResearchSpring2020/geotiffs/*.npy"):
...