Python - 如何将时间序列存储到数据集中

问题描述 投票:0回答:1

我构建了一个解析器,它将MIDI歌曲转换为音符序列 - 和弦元组。对于每首歌曲,它返回元组列表,其中第一项是音符,第二项是音符组。因此得到的数据具有形状[(note, {chords})],例如[(20, {21, 23}), (30, {22, 24, 26, 28})]。请注意,和弦可以是任意长的。

我想从许多歌曲中构建一个数据集,然后将它们传递给循环神经网络。所以我的问题是:将这些数据保存到文件中的最简单方法是什么?

我试过h5py库。不幸的是,它只适用于矩阵。虽然可以像这样保存每一对,但由于弦的长度是无限的,因此效率可能非常低。

python machine-learning neural-network dataset h5py
1个回答
1
投票

腌它。

#Write
import pickle 
x = [(20, {21, 23}), (30, {22, 24, 26, 28})]

with open('pickle.txt','wb') as f:
    pickle.dump(x,f)

#Read
with open('pickle.txt','rb') as f:
    y = pickle.load(f)
© www.soinside.com 2019 - 2024. All rights reserved.