Python Polars 到 Pandas 的转换将 python 对象更改为 bytes 数据类型

Python Polars to Pandas conversion changes python objects to bytes datatype

提问人:AnAlias 提问时间:11/15/2023 最后编辑:AnAlias 更新时间:11/15/2023 访问量:74

问:

我可以创建一个 Polars 数据帧 (df),以便它包含一个带有用户定义的 Python 对象的列。 当我将这个 df 转换为 Pandas(使用 .to_pandas() 方法)时,Python 对象被转换为 bytes 数据类型,我无法获取原始对象。

如何获取原始对象转换为字节后?或者有没有办法防止这种转换?

下面是一个示例

import pandas as pd
import polars as pl
class MyClass:
    def __init__(self, x,y):
        self.x = x
        self.y = y

df = pl.DataFrame({"my_class": [MyClass(1,2), MyClass(3,4)]})
print(df.to_pandas())

极地 DF

df.to_pandas()

蟒蛇 python-polars

评论

0赞 jqurious 11/15/2023
问得好。它看起来像通过箭头,例如比较.to_pandas()df.to_arrow()df.to_numpy()
2赞 jqurious 11/15/2023
github.com/pola-rs/polars/blob/......似乎就是这种情况发生的地方。我认为您可能需要在 Github/Discord 上提问,因为看起来这需要一些“内部知识”来回答。也许需要添加一些东西来支持“往返”不透明对象。

答: 暂无答案