列表包含#
- 分组 搜索
枚举
-
enum class duplicate_find_option : int32_t#
用于选择
index_of()
是返回列表中搜索键的第一个匹配项还是最后一个匹配项的选项。值
-
enumerator FIND_FIRST#
查找列表中搜索键的第一个实例。
-
enumerator FIND_LAST#
查找列表中搜索键的最后一个实例。
-
enumerator FIND_FIRST#
函数
-
std::unique_ptr<column> contains(cudf::lists_column_view const &lists, cudf::scalar const &search_key, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#
创建一个
bool
值列,指示指定的标量是否是列表列中每行的元素。输出列包含与输入
lists
列相同数量的元素。如果列表行lists[i]
包含search_key
中指定的值,则输出column[i]
设置为 true。否则,设置为 false。如果以下一个或多个条件为真,则输出
column[i]
设置为 null搜索键
search_key
为 null列表行
lists[i]
为 null
- 参数:
lists – 要搜索其
n
行的列表列search_key – 要在每个列表行中查找的标量键
stream – 用于设备内存操作和内核启动的 CUDA 流。
mr – 用于分配返回列设备内存的设备内存资源
- 返回值:
一个包含查找结果的
n
行的 BOOL8 列
-
std::unique_ptr<column> contains(cudf::lists_column_view const &lists, cudf::column_view const &search_keys, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#
创建一个
bool
值列,指示第一列的列表行是否包含第二列中的对应值。输出列包含与输入
lists
列相同数量的元素。如果列表行lists[i]
包含search_keys[i]
中的值,则输出column[i]
设置为 true。否则,设置为 false。如果以下一个或多个条件为真,则输出
column[i]
设置为 null行
search_keys[i]
为 null列表行
lists[i]
为 null
- 参数:
lists – 要搜索其
n
行的列表列search_keys – 要在每个列表行中查找的元素列。
stream – 用于设备内存操作和内核启动的 CUDA 流。
mr – 用于分配返回列设备内存的设备内存资源
- 返回值:
一个包含查找结果的
n
行的 BOOL8 列
-
std::unique_ptr<column> contains_nulls(cudf::lists_column_view const &lists, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#
创建一个
bool
值列,指示lists
列中的每一行是否包含至少一个 null 元素。输出列包含与输入
lists
列相同数量的元素。如果行lists[i]
为 null,则输出column[i]
设置为 null。否则,column[i]
设置为非 null 布尔值,具体取决于该列表是否包含 null 元素。空列表的行始终返回 false。不考虑非 null 嵌套元素(如列表或结构体)内部的 null 值。
- 参数:
lists – 要搜索其
n
行的列表列。stream – 用于设备内存操作和内核启动的 CUDA 流。
mr – 用于分配返回列设备内存的设备内存资源
- 返回值:
一个包含查找结果的
n
行的 BOOL8 列
-
std::unique_ptr<column> index_of(cudf::lists_column_view const &lists, cudf::scalar const &search_key, duplicate_find_option find_option = duplicate_find_option::FIND_FIRST, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#
创建值列,指示搜索键在
lists
列中每个列表行内的位置。输出列包含与输入
lists
列相同数量的元素。输出column[i]
包含一个从 0 开始的索引,指示搜索键在每个列表中的位置,从列表开头开始计数。注意如果
search_key
为 null,则所有输出行都设置为 null。如果行
lists[i]
为 null,则output[i]
也为 null。如果行
lists[i]
不包含search_key
,则output[i]
设置为-1
。在所有其他情况下,
output[i]
设置为非负的size_type
索引。
如果
find_option
设置为FIND_FIRST
,则返回search_key
的第一个匹配位置。如果find_option == FIND_LAST
,则返回列表行中最后一个匹配位置。- 抛出:
cudf::data_type_error – 如果
search_keys
类型与lists
中的元素类型不匹配- 参数:
lists – 要搜索其
n
行的列表列search_key – 要在每个列表行中查找的标量键
find_option – 是否返回第一个匹配的位置 (
FIND_FIRST
) 或最后一个匹配的位置 (FIND_LAST
)stream – 用于设备内存操作和内核启动的 CUDA 流
mr – 用于分配返回列设备内存的设备内存资源
- 返回值:
一个包含
search_key
位置的n
行的列
-
std::unique_ptr<column> index_of(cudf::lists_column_view const &lists, cudf::column_view const &search_keys, duplicate_find_option find_option = duplicate_find_option::FIND_FIRST, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#
创建值列,指示搜索键行在
lists
列中对应列表行内的位置。输出列包含与输入
lists
列相同数量的元素。输出column[i]
包含一个从 0 开始的索引,指示每个搜索键行在其对应列表行中的位置,从列表开头开始计数。注意如果
search_keys[i]
为 null,则output[i]
也为 null。如果行
lists[i]
为 null,则output[i]
也为 null。如果行
lists[i]
不包含search_key[i]
,则output[i]
设置为-1
。在所有其他情况下,
output[i]
设置为非负的size_type
索引。
如果
find_option
设置为FIND_FIRST
,则返回search_key
的第一个匹配位置。如果find_option == FIND_LAST
,则返回列表行中最后一个匹配位置。- 抛出:
cudf::logic_error – 如果
search_keys
的行数与lists
不匹配cudf::data_type_error – 如果
search_keys
类型与lists
中的元素类型不匹配
- 参数:
lists – 要搜索其
n
行的列表列search_keys – 一个搜索键列,用于在
lists
的每个对应行中查找find_option – 是否返回第一个匹配的位置 (
FIND_FIRST
) 或最后一个匹配的位置 (FIND_LAST
)stream – 用于设备内存操作和内核启动的 CUDA 流
mr – 用于分配返回列设备内存的设备内存资源
- 返回值:
一个包含
search_key
位置的n
行的列
-
enum class duplicate_find_option : int32_t#