簡體   English   中英

Python 中 arrays 列表的高效數據序列化格式

[英]Efficient Data Serialization format for list of arrays in Python

我在 Python 中有大量 arrays(數據類型 float32,有幾個 int 實例)列表,這些列表將通過 UTF-8 編碼進行序列化並保存在服務器上。 但是,我遇到了保存文件的大小超出存儲限制的問題。

服務器可以處理的可用序列化格式有:字符串、字節、JSON 和 XML。 以下哪種數據格式最適合保存數據結構?

我認為您還應該探索使用 h5 文件。 我只是誠實地將列表列表轉換為 numpy 數組,然后將 numpy 數組保存到 h5 文件中。

你可以像這樣保存:->

import numpy as np
import h5py

nparr = np.asanyarray(yourArr)
h5f = h5py.File('listData.h5', 'w')
h5f.create_dataset('dataset_1', data=nparr)
h5f.close()

你可以像這樣加載:

h5f = h5py.File('listData.h5','r')
loadData = h5f['dataset_1'][:]
h5f.close()

H5 文件針對存儲類似矩陣的數據進行了優化。

如果您需要一些幫助腳本,請嘗試我在這里制作的一些(無恥插件): https://github.com/ss4328/h5_manager_scripts

如果沒有 h5 文件。 你的挖掘,JSON 是最好的實現。 大量免費庫來生成/使用數據。 web 非常時尚,更不用說它們也是人類可讀的。 XML 有點過時了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM