【发布时间】:2020-02-10 04:07:24
【问题描述】:
我有一个字典列表,称为数据,如下所示。 dict 的每个键都基于一个字符串命名,其中 _segX 之前是名称,segX 表示数据来自哪个段:
{'o1_sp1_seg1.wav': array([ 0. , 1 ]),
'o1_sp1_seg3.wav': array([2, 3, 0. ]),
'o2_sp1_seg1.wav': array([6,7, 11, 8, 9 ])
'o2_sp1_seg2.wav': array([6,3 ])
'o2_sp1_seg5.wav': array([6,7, 9])
'o5_sp1_seg3.wav': array([1, 6 ])
}
每个键中的元素数量通常不一样,我想将其转换为以下长格式的数据帧: seg_orginal 将复制 dict 键的 segX 部分, seg_index 跟踪哪个段数当前的 .wav 数据是。
name value index seg_index seg_original
o1_sp1_seg1.wav 0 1 1 seg1
o1_sp1_seg1.wav 1 2 1 seg1
o1_sp1_seg3.wav 2 3 2 seg3
o1_sp1_seg3.wav 3 4 2 seg3
o1_sp1_seg3.wav 0 5 2 seg3
o2_sp1_seg1.wav 6 1 1 seg1
o2_sp1_seg1.wav 7 2 1 seg1
o2_sp1_seg1.wav 11 3 1 seg1
o2_sp1_seg1.wav 8 4 1 seg1
o2_sp1_seg1.wav 9 5 1 seg1
o2_sp1_seg2.wav 6 6 2 seg2
o2_sp1_seg2.wav 3 7 2 seg2
o2_sp1_seg5.wav 6 8 3 seg5
o2_sp1_seg5.wav 7 9 3 seg5
o2_sp1_seg5.wav 9 10 3 seg5
o5_sp1_seg3.wav 1 1 1 seg3
o5_sp1_seg3.wav 6 2 1 seg3
我知道如何获取前三列的结果,但是要获取 seg_index 和 seg_original 列,我就卡住了。
【问题讨论】:
标签: python pandas data-manipulation