lance.LanceDataset.drop_columns(columns: list[str])

从数据集中删除一列或多列

这是一个仅涉及元数据的操作,不会从底层存储中删除实际数据。如需删除数据,您必须随后调用compact_files来重写不包含被删除列的数据,然后调用cleanup_old_versions来移除旧文件。

Parameters:
columns : list of str

要删除的列名。这些可以是嵌套列引用(例如“a.b.c”)或顶级列名(例如“a”)。

示例

>>> import lance
>>> import pyarrow as pa
>>> table = pa.table({"a": [1, 2, 3], "b": ["a", "b", "c"]})
>>> dataset = lance.write_dataset(table, "example")
>>> dataset.drop_columns(["a"])
>>> dataset.to_table().to_pandas()
   b
0  a
1  b
2  c