首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从python中的集合字典创建动态列表(labels_true和labels_pred

从python中的集合字典创建动态列表(labels_true和labels_pred
EN

Stack Overflow用户
提问于 2020-07-01 01:11:07
回答 1查看 39关注 0票数 0

我必须创建一个基于以下字典的列表第一个字典是

代码语言:javascript
复制
groundTruth = {'1': ['IMG_0001.png', 'IMG_0002.png', '**IMG_0003.png**', '**IMG_0004.png**'], 
               '2': ['IMG_0020.png', 'IMG_0021.png', 'IMG_0022.png', 'IMG_0023.png'], 
               '3': ['IMG_0051.png', 'IMG_0052.png', 'IMG_0053.png', 'IMG_0054.png']} 

第二本字典是

代码语言:javascript
复制
clustering = {'1': ['IMG_0001.png', 'IMG_0002.png', '**IMG_0053.png**', '**IMG_0054.png**'], 
              '2': ['IMG_0020.png', 'IMG_0021.png', 'IMG_0022.png', 'IMG_0023.png'], 
              '3': ['**IMG_0003.png**', '**IMG_0004.png**', 'IMG_0051.png', 'IMG_0052.png']}

因此,我必须创建两个列表labels_true,它将由像1,2,3和labels_pred这样的文件夹名称组成,它将检查集群字典中的图像名称,并检查该图像位于哪个文件夹中,并将该文件夹编号返回到label_pred列表中。例如,在下面的labels_pred中,我们有两个3合1的图像,因为这两个图像出现在聚类字典的第一个文件夹中。

那么,我应该如何在python中创建这个动态列表呢?我是Python的新手。感谢你的帮助。非常感谢。

代码语言:javascript
复制
from sklearn import metrics
labels_true = [1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3]
labels_pred = [1, 1, 3, 3, 2, 2, 2, 2, 3, 3, 1, 1]
metrics.adjusted_rand_score(labels_true, labels_pred)
EN

回答 1

Stack Overflow用户

发布于 2020-07-01 11:44:07

你可以通过为start制作颠倒的字典来做到这一点,

代码语言:javascript
复制
rground = {image:folder for folder, images in zip(clustering.keys(),clustering.values()) for image in images 
rcluster = {image:folder for folder, images in zip(clustering.keys(),clustering.values()) for image in images  

然后,由于图像的顺序在第一个原始字典中,您可以获得列表中的值,并且对于您的两个列表,对每个字典进行反向查找,如下所示

代码语言:javascript
复制
from itertools import chain
list_true = [rground[x] for x in chain.from_iterable(groundTruth.values())]
list_pred = [rcluster[x] for x in chain.from_iterable(groundTruth.values())]

注意:该链用于展平从values返回的双列表

由于一些文件上的额外*不清楚它们的作用,我假设您以前对它们进行了剥离,否则您可以在上面的4行中根据需要进行剥离

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62662715

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档