Pandas: быстро преобразовать dataframe в словарь
Вы можете использовать следующий синтаксис для преобразования DataFrame pandas в словарь:
df. to_dict ()
Обратите внимание, что to_dict() принимает следующие потенциальные аргументы:
- dict: (по умолчанию) Ключи — это имена столбцов. Значения представляют собой словари пар индекс:данные.
- список: ключи — это имена столбцов. Значения представляют собой списки данных столбцов.
- series: ключи — это имена столбцов. Значения представляют собой ряды данных столбца.
- разделение: ключи — «столбцы», «данные» и «индекс».
- записи: ключи — это имена столбцов. Значения — это данные в ячейках.
- индекс: ключи являются индексными метками. Значения — это данные в ячейках.
В следующих примерах показано, как использовать этот синтаксис на практике со следующим DataFrame pandas:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'C'], ' points ': [5, 7, 9, 12, 9], ' rebounds ': [11, 8, 6, 6, 5]}) #view DataFrame df team points rebounds 0 to 5 11 1 to 7 8 2 B 9 6 3 B 12 6 4 C 9 5
Пример 1. Преобразование DataFrame в словарь («dict»).
Следующий код показывает, как преобразовать DataFrame pandas в словарь, используя метод dict по умолчанию:
df. to_dict ()
{'team': {0: 'A', 1: 'A', 2: 'B', 3: 'B', 4: 'C'},
'points': {0:5, 1:7, 2:9, 3:12, 4:9},
'rebounds': {0:11, 1:8, 2:6, 3:6, 4:5}}
Пример 2. Преобразование DataFrame в словарь («Список»)
Следующий код показывает, как преобразовать DataFrame pandas в словарь с помощью метода list :
df. to_dict (' list ') {'team': ['A', 'A', 'B', 'B', 'C'], 'points': [5, 7, 9, 12, 9], 'rebounds': [11, 8, 6, 6, 5]}
Пример 3. Преобразование DataFrame в словарь («серию»)
Следующий код показывает, как преобразовать DataFrame pandas в словарь с помощью метода series :
df. to_dict (' series ') {'team': 0 A 1A 2 B 3 B 4C Name: team, dtype: object, 'points': 0 5 1 7 2 9 3 12 4 9 Name: points, dtype: int64, 'rebounds': 0 11 1 8 2 6 3 6 4 5 Name: rebounds, dtype: int64}
Пример 4. Преобразование DataFrame в словарь («разделение»)
В следующем коде показано, как преобразовать DataFrame pandas в словарь с помощью метода « split »:
df. to_dict (' split ') {'index': [0, 1, 2, 3, 4], 'columns': ['team', 'points', 'rebounds'], 'data': [['A', 5, 11], ['A', 7, 8], ['B', 9, 6], ['B', 12, 6], ['C', 9, 5]]}
Пример 5. Преобразование DataFrame в словарь («записи»).
Следующий код показывает, как преобразовать DataFrame pandas в словарь с помощью метода Records :
df. to_dict (' records ') [{'team': 'A', 'points': 5, 'rebounds': 11}, {'team': 'A', 'points': 7, 'rebounds': 8}, {'team': 'B', 'points': 9, 'rebounds': 6}, {'team': 'B', 'points': 12, 'rebounds': 6}, {'team': 'C', 'points': 9, 'rebounds': 5}]
Пример 6. Преобразование DataFrame в словарь («индекс»).
Следующий код показывает, как преобразовать DataFrame pandas в словарь с помощью метода index :
df. to_dict (' index ') {0: {'team': 'A', 'points': 5, 'rebounds': 11}, 1: {'team': 'A', 'points': 7, 'rebounds': 8}, 2: {'team': 'B', 'points': 9, 'rebounds': 6}, 3: {'team': 'B', 'points': 12, 'rebounds': 6}, 4: {'team': 'C', 'points': 9, 'rebounds': 5}}
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные преобразования данных в pandas:
Как преобразовать DataFrame Pandas в массив NumPy
Как преобразовать серию Pandas в массив NumPy
Как преобразовать DataFrame Pandas в список