【发布时间】:2020-06-24 03:30:49
【问题描述】:
假设我有一个字典(MxN = 4x3 矩阵),其中包含整数键和列表值,如下所示:
d={1:[10,11,12], 2:[13,14,15], 3:[16,17,18], 4:[19,20,21]}
我正在尝试获取如下所示的列表:
new_list_1 = [10,13,16,19]
在这种情况下,我试图获取字典中每个值(列表)的第一个元素并将其放入一个新列表中。但是,我也想对其他索引执行此操作,例如:
new_list_2 = [11,14,17,20]
或
new_list_3 = [12,15,18,21]
一旦我有了这些列表,理想情况下我想把它们放在一个维度为 NxM 的新字典中:
d_new = {0:new_list_1, 1:new_list_2, 2:new_list_3}
谢谢!
【问题讨论】:
-
也许将其转换为
numpy.array或pandas.DataFrame,然后您可以获得第一列array[:,0],第二列array[:,1],等等。您甚至可以将所有列转换为行 - 转置矩阵-d_new = array.T -
感谢您的输入 - 这类似于 Trace Malloc 的方法。我喜欢出于可读性目的而采用转置的想法。
标签: python list dictionary indexing