小编gbi*_*977的帖子

从 parquet 加载 pandas DataFrame - 列表被反序列化为 numpy 的 ndarrays

import pandas as pd
df = pd.DataFrame({
    "col1" : ["a", "b", "c"],
    "col2" : [[1,2,3], [4,5,6,7], [8,9,10,11,12]]
})
df.to_parquet("./df_as_pq.parquet")
df = pd.read_parquet("./df_as_pq.parquet")
[type(val) for val in df["col2"].tolist()]
Run Code Online (Sandbox Code Playgroud)

输出:

[<class 'numpy.ndarray'>, <class 'numpy.ndarray'>, <class 'numpy.ndarray'>]
Run Code Online (Sandbox Code Playgroud)

有什么方法可以读取 parquet 文件并获取 pythonic 列表形式的列表值(就像创建时一样)?最好使用pandas但愿意尝试替代方案。

我面临的问题是,我事先不知道哪些列包含列表,因此我检查类型的方式与我在代码中所做的类似。假设我当前对添加 numpy 作为依赖项不感兴趣,有什么方法可以检查变量是否类似于数组而无需显式导入和指定np.ndarray

python pandas parquet

7
推荐指数
1
解决办法
1905
查看次数

标签 统计

pandas ×1

parquet ×1

python ×1