Как создать файл.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 для библиотеки типов ранее не существовал.)