如何解决numpy ndarrays的Python dict列表未循环更新
我正在尝试使用字典来保存不同类型的数据。我想使用label_dict来保存来自plotting_dict的信息。目前,Plotting_dict有一个键“ Batched_total_traces”,其中包含一个数个神经元随时间变化的荧光数据的numpy.ndarray;另一个键“ Batched_total_labels”,是一个包含kmeans聚类标签的numpy.ndarray。 [3 3 2 1 1 1 2 3 0 2 1 3 0]。我想为每个唯一的标签(0、1、2、3)创建密钥,并将荧光时间试验放在适当的密钥中。
def label_dict(plotting_dict):
label_dict = {}
counter = 0
for label,trace in zip(plotting_dict['Batched_total_labels'],plotting_dict['Batched_total_traces']):
if label not in label_dict.keys():
label_dict[label] = trace
else:
label_dict[label] += trace
print(counter)
return label_dict
这是我最近的尝试,但是按键似乎只是针对单个神经元的单次试验。
我也尝试过list(trace)和.append(),但这给了我一系列不同的问题,其中每个键的值太多,所有键的总数为790,我应该有354个
更新:
我意识到label_dict[label]
只是第一个trace
并且是形状(110,)。我创建了一个空列表,然后trace
创建了一个已解决问题的列表。我不明白为什么label_dict[label]
没有更新。例如,这是我用来添加到label_dict[1]
的代码,因此,非常感谢您对此工作的任何见解。
def label_dict(plotting_dict):
label_dict = {}
for label,plotting_dict['Batched_total_traces']):
if label not in label_dict.keys():
label_dict[label] = []
label_dict[label].append(trace)
else:
label_dict[label].append(trace)
return label_dict
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。