Как сохранить словарь массивов в файл в Numpy

У меня есть бит массивов

{1:array([...]), 2:array([...]), 3:array([...])} 

Я хотел бы сохранить его в файл и загрузить его позже.

Я обнаружил, что у numpy есть список методов ввода и вывода , но, похоже, они имеют дело только с массивами.

Благодарю.

  • Определенный способ сопоставления Stata с взвешенной командой xtile с использованием Python?
  • Задайте значения в массиве numpy в NaN по индексу
  • Как построить эмпирический cdf в matplotlib в Python?
  • Глубокая копия np.array np.array
  • Самый быстрый способ увеличить числовой числовой массив
  • ValueError: numpy.dtype имеет неправильный размер, попробуйте перекомпилировать
  • Могу ли я получить матричный определитель с помощью Numpy?
  • Теорема Парсеваля в Python
  • 2 Solutions collect form web for “Как сохранить словарь массивов в файл в Numpy”

    На самом деле вы можете использовать встроенную библиотеку pickle для сериализации и десериализации объектов без использования numpy.

    Вот макет кода

     import pickle data1 = {'a': [1, 2.0, 3, 4 + 6j], 'b': ('string', u'Unicode string'), 'c': None} print data1, type(data1) with open('data.pkl', 'wb') as output: # Pickle dictionary using protocol 0. pickle.dump(data1, output) # load data from pkl file with open("data.pkl", "rb") as fp: loaded_data1 = pickle.load(fp) print loaded_data1, type(loaded_data1) 

    Результаты

     Before: {'a': [1, 2.0, 3, (4+6j)], 'c': None, 'b': ('string', u'Unicode string')} <type 'dict'> After: {'a': [1, 2.0, 3, (4+6j)], 'c': None, 'b': ('string', u'Unicode string')} <type 'dict'> 

    Надеюсь, поможет.

    Следующий скрипт сохранит диск из массива numpy на диск и затем загрузит его обратно в память.

     import numpy as np arr1 = np.arange(0, 10, 1) arr2 = np.arange(10, 20, 1) arr3 = np.arange(20, 30, 1) dct = {'1': arr1, '2': arr2, '3':arr3} outfile = 'dict_of_arrays.npz' np.savez(outfile, **dct) npzfile = np.load(outfile) print('npzfile.files: {}'.format(npzfile.files)) print('npzfile["1"]: {}'.format(npzfile["1"])) 

    Запуск этого скрипта показывает следующее:

     npzfile.files: ['1', '3', '2'] npzfile["1"]: [0 1 2 3 4 5 6 7 8 9] 

    Обратите внимание, что ваши ключи dict должны быть строками. Возможно, это была проблема?

    Я работаю numpy 1.10.4

    Interesting Posts

    список зависимостей пакета python без их загрузки?

    Добавьте новый столбец и вставьте определенные значения в соответствии с определенным интервала в python

    Использование GPU, несмотря на настройку CPU_Only, приводит к неожиданному аргументу ключевого слова

    Подключить эмпирическое распределение к теоретическим с помощью Scipy (Python)?

    многопроцессор python vs threading для работы cpu для работы с окнами и linux

    Можно ли сортировать два списка (которые ссылаются друг на друга) точно так же?

    Проблема с выпуском при подписке на MQTT в Python с использованием Paho MQTT

    Pylint игнорирует конкретные имена

    Django: Как получить доступ к параметрам регулярного выражения URL-адресов внутри класса промежуточного программного обеспечения?

    Как объявить значения по умолчанию для переменных экземпляра в Python?

    setuptools: удалить префикс lib / python3.5 / site-packages из zip

    Библиотека mpeg-2 для извлечения продолжительности видео

    Добавить расширенные функции в текстовый виджет tkinter

    как извлечь значения из <связанного метода Server.diagnostics <Server: ubuntu12_6 >>?

    Matplotlib с аннотацией, отрезанной от сохраненной фигуры

    Python - лучший язык программирования в мире.