Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг
07 Июл 2023
2 мин
1526

Преобразование словаря Python в DataFrame

Часто возникает задача преобразования словаря Python в DataFrame библиотеки pandas для удобства дальнейшего анализа данных. Словарь может выглядеть, например,

Часто возникает задача преобразования словаря Python в DataFrame библиотеки pandas для удобства дальнейшего анализа данных. Словарь может выглядеть, например, так:

dict_data = {
    '2022-01-01': 100,
    '2022-01-02': 200,
    '2022-01-03': 300,
    '2022-01-04': 400,
    '2022-01-05': 500
}

Здесь ключами словаря являются даты, а значениями — числа, которые соответствуют этим датам. Задача состоит в том, чтобы преобразовать этот словарь в DataFrame, в котором даты и соответствующие им числа будут двумя отдельными столбцами.

Представление данных в виде DataFrame может выглядеть следующим образом:

| | Date | Value |
|—|————|——-|
| 0 | 2022-01-01 | 100 |
| 1 | 2022-01-02 | 200 |
| 2 | 2022-01-03 | 300 |
| 3 | 2022-01-04 | 400 |
| 4 | 2022-01-05 | 500 |

Одним из возможных решений может быть преобразование каждой пары ключ-значение в словарь, а затем построение DataFrame на основе получившегося словаря словарей. Однако, это может быть не самым оптимальным решением, особенно если исходный словарь содержит большое количество элементов.

Библиотека pandas предоставляет более прямой и эффективный способ преобразования словаря в DataFrame. Для этого достаточно использовать функцию pandas.DataFrame.from_dict(). В качестве аргументов эта функция принимает исходный словарь и указание на то, что словарь следует интерпретировать как словарь списков, где списки представляют собой строки DataFrame.

Пример преобразования словаря в DataFrame:

import pandas as pd

# исходный словарь
dict_data = {
    '2022-01-01': 100,
    '2022-01-02': 200,
    '2022-01-03': 300,
    '2022-01-04': 400,
    '2022-01-05': 500
}

# преобразование словаря в DataFrame
df = pd.DataFrame(list(dict_data.items()), columns=['Date', 'Value'])

# вывод DataFrame
print(df)

Результат выполнения данного кода будет выглядеть следующим образом:

         Date  Value
0  2022-01-01    100
1  2022-01-02    200
2  2022-01-03    300
3  2022-01-04    400
4  2022-01-05    500

Таким образом, преобразование словаря в DataFrame с помощью библиотеки pandas может быть выполнено достаточно простым и эффективным способом.

Добавить комментарий