Преобразование фрейма данных pandas с объектами словаря в фрейм данных Polars с типом объектаPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Преобразование фрейма данных pandas с объектами словаря в фрейм данных Polars с типом объекта

Сообщение Anonymous »

У меня есть фрейм данных pandas со столбцом словарей. Я хочу преобразовать это в фрейм данных Polars с помощью dtype Polars.Object, который, очевидно, обертывает произвольные объекты Python. Я не могу понять, как это сделать.
Рассмотрите этот код:

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

df = pd.DataFrame({ "the_column": [{ "key" : 123 }, { "foo" : 456 }, { "bar" : 789 }]})

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

     the_column
0  {'key': 123}
1  {'foo': 456}
2  {'bar': 789}

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

>>> pl.from_pandas(df)
shape: (3, 1)
┌─────────────────┐
│ the_column      │
│ ---             │
│ struct[3]       │
╞═════════════════╡
│ {null,null,123} │
│ {null,456,null} │
│ {789,null,null} │
└─────────────────┘
Как видите, по умолчанию Polars пытается преобразовать словари в структуры стрелок. Это не то, чего я хочу, поскольку ключи для каждого объекта разные. Я хочу, чтобы они оставались объектами Python. Функция Schema_overrides что-то делает, но не то, что мне нужно:

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

>>> pl.from_pandas(df, schema_overrides = {'the_column': pl.Object })
InvalidOperationError: casting from Int64 to Unknown not supported
Как мне здесь добиться того, чего я хочу?


Подробнее здесь: https://stackoverflow.com/questions/758 ... -with-obje
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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