Как преобразовать список вложенных диктовок в кадр данных Polars?Python

Программы на Python
Ответить
Anonymous
 Как преобразовать список вложенных диктовок в кадр данных Polars?

Сообщение Anonymous »

Я конвертирую список в полярный фрейм данных ниже.

Код: Выделить всё

import polars as pl

list_sample = [
{
'name': 'A',
'fame': 0,
'data': {
'date': ['2021-01-01', '2021-02-01', '2021-03-01'],
'credit_score': [800, 890, 895],
'spend': [1500, 25000, 2400],
'average_spend': 5000
}
},
{
'name': 'B',
'fame': 1,
'data': {
'date': ['2022-01-01', '2022-02-01', '2022-03-01'],
'credit_score': [2800, 390, 8900],
'spend': [15000, 5000, 400],
'average_spend': 3000
}
}
]

rows = []

for item in list_sample:
date = item['data']['date']
credit_score = item['data']['credit_score']
spend = item['data']['spend']
rows.extend(list(zip(date, credit_score, spend)))

df = pl.DataFrame(rows, orient="row", schema=["date", "credit_score", "spend"])

Код: Выделить всё

shape: (6, 3)
┌────────────┬──────────────┬───────┐
│ date       ┆ credit_score ┆ spend │
│ ---        ┆ ---          ┆ ---   │
│ str        ┆ i64          ┆ i64   │
╞════════════╪══════════════╪═══════╡
│ 2021-01-01 ┆ 800          ┆ 1500  │
│ 2021-02-01 ┆ 890          ┆ 25000 │
│ 2021-03-01 ┆ 895          ┆ 2400  │
│ 2022-01-01 ┆ 2800         ┆ 15000 │
│ 2022-02-01 ┆ 390          ┆ 5000  │
│ 2022-03-01 ┆ 8900         ┆ 400   │
└────────────┴──────────────┴───────┘
Но в кадре данных все еще отсутствуют несколько столбцов, например имя, известность, средняя_скорость и т. д. Как их добавить? И есть ли более простой способ сделать это?


Подробнее здесь: https://stackoverflow.com/questions/765 ... -dataframe
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»