Как создать файл.mdb?

Я новичок в Zarr, HDF5 и LMDB. Я конвертировал данные из HDF5 в Zarr, но получил много файлов с расширением.n (n от 0 до 31). Я хочу иметь только один файл с расширением.zarr. Я пытался использовать LMDB (функция zarr.LMDBStore), но я не понимаю, как создать файл.mdb? У вас есть идея, как это сделать? Спасибо!

3 ответа

В документации к классу LMDBStore есть несколько примеров использования LMDB в качестве хранилища Zarr. Например:

>>> store = zarr.LMDBStore('data/group.mdb')
>>> root = zarr.group(store=store, overwrite=True)
>>> foo = root.create_group('foo')
>>> bar = foo.zeros('bar', shape=(10, 10), chunks=(5, 5))
>>> bar[...] = 42
>>> store.close()  # don't forget to call this when you're done

Для создания файла.mdb вам не нужно ничего делать, кроме указанного выше, он будет создан автоматически.

@kish При попытке вашего решения я получил эту ошибку:

из comtypes.gen импорт Access Ошибка ImportError: невозможно импортировать имя 'Access'

Вы, вероятно, захотите иметь под рукой ссылку Access DAO/ADO/VBA для используемых методов, поскольку модуль comtypes динамически генерирует оболочки библиотеки COM, поэтому встроенной документации нет.

Вот краткий пример того, как это работает. (Идите и проверьте сами.)

from comtypes.client import CreateObject

access = CreateObject('Access.Application')

from comtypes.gen import Access

DBEngine = access.DBEngine
db = DBEngine.CreateDatabase('test.mdb', Access.DB_LANG_GENERAL)
      # For me, test.mdb was created in my My Documents folder when I ran the script 

db.BeginTrans()

db.Execute("CREATE TABLE test (ID Text, numapples Integer)")
db.Execute("INSERT INTO test VALUES ('ABC', 3)")

db.CommitTrans()
db.Close(

)

(Перемещен второй оператор импорта после строки CreateObject для случаев, когда модуль оболочки Python для библиотеки типов ранее не существовал.)

Другие вопросы по тегам