У меня довольно грязный вложенный словарь, который я пытаюсь преобразовать во фрейм данных pandas.Данные хранятся в словаре списков, содержащемся в более широком словаре, где следует каждая разбивка ключа / значения: {userID_key: {postID_key: [list of hash tags]}}
Вот более конкретный пример того, как выглядят данные:
{'user_1': {'postID_1': ['#fitfam',
'#gym',
'#bro'],
'postID_2': ['#swol',
'#anotherhashtag']},
'user_2': {'postID_78': ['#ripped',
'#bro',
'#morehashtags'],
'postID_1': ['#buff',
'#othertags']},
'user_3': ...and so on }
Я хочу создать фрейм данных, который даст мне счетчики частоты каждого хэштега для каждой пары (userID, postID), как показано ниже:
+------------+------------+--------+-----+-----+------+-----+
| UserID_key | PostID_key | fitfam | gym | bro | swol | ... |
+------------+------------+--------+-----+-----+------+-----+
| user_1 | postID_1 | 1 | 1 | 1 | 0 | ... |
| user_1 | postID_2 | 0 | 0 | 0 | 1 | ... |
| user_2 | postID_78 | 0 | 0 | 1 | 0 | ... |
| user_2 | postID_1 | 0 | 0 | 0 | 0 | ... |
| user_3 | ... | ... | ... | ... | ... | ... |
+------------+------------+--------+-----+-----+------+-----+
В качестве идеи у меня был CountVectorizer
из scikit-learnно он не сможет обработать вложенный словарь.Буду признателен за любую помощь в получении этого желаемого формы.