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?