Преобразование структуры словаря
Теперь вы хотите очистить данные о политиках и перенести их в Dask DataFrame. Однако данные имеют вложенную структуру, поэтому перед загрузкой в DataFrame их необходимо дополнительно обработать.
Один из нужных фрагментов данных — ссылка на сайт каждого политика — находится на нескольких уровнях вглубь словаря. Пример ниже показывает, как эти данные хранятся.
record = {
...
'links': [{'note': '...',
'url': '...'},], # Хранится здесь
...
}
Бэг с данными о политиках доступен в вашей среде как dict_bag.
Это упражнение является частью курса
Параллельное программирование с Dask на Python
Инструкции к упражнению
- Дополните функцию
extract_url()так, чтобы она извлекала ключ'url'из словаря, который находится на нулевой позиции в списке под ключом'links', и присваивала его ключуurl. - Примените функцию
extract_url()ко всем элементам бэга.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
def extract_url(x):
# Extract the url and assign it to the key 'url'
x['url'] = x[____][____][____]
return x
# Run the function on all elements in the bag.
dict_bag = ____
print(dict_bag.take(1))