如何使用键合并`defaultdict`中的列表,但在该键内将列表分开?
How to merge the list in `defaultdict` using keys, but keep the list separate within that key?
我想合并 defaultdict
中的列表,其中包含来自两个不同 data/file 的 class(键)和列表值。
我想使用唯一键合并列表,但将列表值分开。
输入:
defaultdict(<class 'list'>, {'1335': ['C', 'T', 'T', 'C', 'T', 'G'], '254': ['T', 'T', 'G', 'C', 'G', 'G']})
defaultdict(<class 'list'>, {'1335': ['A', 'C', 'A', 'A', 'C', 'A'], '254': ['A', 'G', 'A', 'T', 'A', 'A']})
输出:
defaultdict(<class 'list'>, {'1335': ['C', 'T', 'T', 'C', 'T', 'G'], ['A', 'C', 'A', 'A', 'C', 'A'] , '254': ['T', 'T', 'G', 'C', 'G', 'G'], ['A', 'G', 'A', 'T', 'A', 'A']})
谢谢,
您希望新词典的值是列表的列表。
您可以创建一个新的 defaultdict
列表,并附加每个字典中的列表值:
input_dicts = [dict1, dict2]
result = defaultdict(list)
for to_merge in input_dicts:
for key, value in to_merge.items():
result[key].append(value)
我想合并 defaultdict
中的列表,其中包含来自两个不同 data/file 的 class(键)和列表值。
我想使用唯一键合并列表,但将列表值分开。
输入:
defaultdict(<class 'list'>, {'1335': ['C', 'T', 'T', 'C', 'T', 'G'], '254': ['T', 'T', 'G', 'C', 'G', 'G']})
defaultdict(<class 'list'>, {'1335': ['A', 'C', 'A', 'A', 'C', 'A'], '254': ['A', 'G', 'A', 'T', 'A', 'A']})
输出:
defaultdict(<class 'list'>, {'1335': ['C', 'T', 'T', 'C', 'T', 'G'], ['A', 'C', 'A', 'A', 'C', 'A'] , '254': ['T', 'T', 'G', 'C', 'G', 'G'], ['A', 'G', 'A', 'T', 'A', 'A']})
谢谢,
您希望新词典的值是列表的列表。
您可以创建一个新的 defaultdict
列表,并附加每个字典中的列表值:
input_dicts = [dict1, dict2]
result = defaultdict(list)
for to_merge in input_dicts:
for key, value in to_merge.items():
result[key].append(value)