Column#

class pylibcudf.column.Column(DataType data_type, size_type size, gpumemoryview data, gpumemoryview mask, size_type null_count, size_type offset, list children)#

一个包含可空设备数据作为元素列的容器。

此类实现了 Arrow 柱状数据规范,用于存储在 GPU 上的数据。它依赖于类似于 Python memoryview 的语义来维护构建时所用数据的共享所有权,因此任何输入数据也可能由其他数据结构共同拥有。Column 旨在通过 libcudf 支持的算法进行操作。

参数:
data_typeDataType

列中的数据类型。

sizesize_type

列中的行数。

datagpumemoryview

列将引用的数据。

maskgpumemoryview

列的 null 掩码。

null_countint

列中 null 行的数量。

offsetint

列数据开始时在数据缓冲区中的偏移量。

childrenlist

如果是复合列类型,则为该列的子列。

方法

all_null_like(Column like, size_type size)

从模板创建一个全 null 列。

child(self, size_type index)

获取该列的子列。

children(self)

该列的子列。

copy(self)

创建该列的副本。

data(self)

该列的数据缓冲区。

from_cuda_array_interface_obj(obj)

从具有 CUDA 数组接口的对象创建一个 Column。

from_scalar(Scalar slr, size_type size)

从 Scalar 创建一个 Column。

list_view(self)

Column 特定于列表的方法的访问器。

null_count(self)

列中 null 元素的数量。

null_mask(self)

该列的 null 掩码。

num_children(self)

该列的子列数量。

offset(self)

该列的偏移量。

size(self)

列中的元素数量。

type(self)

列中的数据类型。

with_mask(self, gpumemoryview mask, ...)

使用新的 null 掩码增强此列。

static all_null_like(Column like, size_type size)#

从模板创建一个全 null 列。

参数:
likeColumn

应模仿其类型的列

sizeint

结果列中的行数。

返回:
Column

一个具有 size 行且类型与 like 匹配的全 null 列。

child(self, size_type index) Column#

获取该列的子列。

参数:
indexsize_type

要获取的子列的索引。

返回:
Column

子列。

children(self) list#

该列的子列。

copy(self) Column#

创建该列的副本。

data(self) gpumemoryview#

该列的数据缓冲区。

static from_cuda_array_interface_obj(obj)#

从具有 CUDA 数组接口的对象创建一个 Column。

参数:
objobject

具有 CUDA 数组接口的,用于创建列的对象。

返回:
Column

一个包含 CUDA 数组接口数据的 Column。

注意

创建列时不会复制数据。调用者有责任确保在使用列时数据不会意外变异。

static from_scalar(Scalar slr, size_type size)#

从 Scalar 创建一个 Column。

参数:
slrScalar

用于创建列的 scalar。

sizesize_type

列中的元素数量。

返回:
Column

一个包含重复 size 次的 scalar 的 Column。

list_view(self) ListColumnView#

Column 特定于列表的方法的访问器。

null_count(self) size_type#

列中 null 元素的数量。

null_mask(self) gpumemoryview#

该列的 null 掩码。

num_children(self) size_type#

该列的子列数量。

offset(self) size_type#

该列的偏移量。

size(self) size_type#

列中的元素数量。

type(self) DataType#

列中的数据类型。

with_mask(self, gpumemoryview mask, size_type null_count) Column#

使用新的 null 掩码增强此列。

参数:
maskgpumemoryview

新的掩码(或 None 以取消设置掩码)

null_countint

新的 null 数量。如果这是不正确的,将会发生糟糕的事情。

返回:
与 self 共享数据的新 Column 对象(除了新的掩码)。
class pylibcudf.column.ListColumnView(Column col)#

Column 特定于列表的方法的访问器。

方法

child(self)

底层列表列的数据列。

offsets(self)

底层列表列的偏移量列。

child(self)#

底层列表列的数据列。

offsets(self)#

底层列表列的偏移量列。

pylibcudf.column.is_c_contiguous(shape: Sequence[int], strides: None | Sequence[int], int itemsize: int) bool#

确定形状和步长是否是 C-contiguous

参数:
shapeSequence[int]

每个维度中的元素数量。

stridesNone | Sequence[int]

每个维度以字节为单位的步长。如果为 None,则内存布局为 C-contiguous。

itemsizeint

元素以字节为单位的大小。

返回:
bool

布尔值结果。