Извлечение и интеграция данных из отдельных списков в Python - PullRequest
0 голосов
/ 21 мая 2010

У меня есть этот код:

cursor.execute( ''' SELECT id,DISTINCT tag
                     FROM userurltag ''')
tags = cursor.fetchall ()
T = [3,5,7,2,1,2,2,2,5,6,3,3,1,7,4] 

У меня есть 7 групп имен 1, ..., 7. Каждая строка в списке «тегов» соответствует строке в списке «T». Значения «T» говорят, что, например, первая строка в списке «тегов» принадлежит группе 3, вторая строка в списке «тегов» принадлежит группа 5 и так далее. Это в основном кластеры, к которым принадлежит каждый тег. Я хочу извлечь их так, чтобы каждая группа / кластер была представлена, например, в отдельном типе данных словаря. Важно то, что количество кластеров будет меняться при каждом запуске. Поэтому мне нужен общий код, который может работать с различным количеством кластеров для этой проблемы. Я серьезно нуждаюсь в вашей помощи Спасибо.

1 Ответ

1 голос
/ 21 мая 2010
cluster_to_tag = defaultdict(list)
#May want to assert that length of tags and T is same
for tag,cluster in zip(tags, T):
    cluster_to_tag[cluster].append(tag)

#cluster_to_tag now maps cluster ti list of tags

НТН

...