【发布时间】:2023-01-19 23:26:21
【问题描述】:
是否可以毫无例外地从 polars 数据框中选择可能不存在的列(返回具有默认值或 null/None 的列)?
我真正想要的行为可以在示例中显示如下:
import polars as pl
df1 = pl.DataFrame({"id": [1, 2, 3], "bar": ["sugar", "ham", "spam"]})
df2 = pl.DataFrame({"id": [4, 5, 6], "other": ["a", "b", "b"]})
df1.write_csv("df1.csv")
df2.write_csv("df2.csv")
df = pl.scan_csv("df*.csv").select(["id", "bar"])
res = df.collect()
现在,如果我运行上面的代码,将会出现错误,因为df2.csv文件不包含专栏“酒吧”.我想要的结果是——资源只是里面的内容df1.csv,这意味着数据框在df2.csv文件由于没有列将不会被选中“酒吧”在里面。
【问题讨论】:
-
除了将“df*.csv”更改为“df1.csv”,我认为这不是您想要的,不支持。您可以在写入文件时将缺失的列添加为空值吗?
标签: python python-polars