文件 | 函数
切片

文件

文件  slice.hpp
 

函数

std::unique_ptr< columncudf::strings::slice_strings (strings_column_view const &input, numeric_scalar< size_type > const &start=numeric_scalar< size_type >(0, false), numeric_scalar< size_type > const &stop=numeric_scalar< size_type >(0, false), numeric_scalar< size_type > const &step=numeric_scalar< size_type >(1), rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref())
 返回一个新的字符串列,其中包含输入列中字符串的子字符串。 更多...
 
std::unique_ptr< columncudf::strings::slice_strings (strings_column_view const &input, column_view const &starts, column_view const &stops, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref())
 返回一个新的字符串列,其中包含输入列中字符串的子字符串,为每个字符串使用唯一的范围。 更多...
 

详细描述

函数文档

◆ slice_strings() [1/2]

std::unique_ptr<column> cudf::strings::slice_strings ( strings_column_view const &  input,
column_view const &  starts,
column_view const &  stops,
rmm::cuda_stream_view  stream = cudf::get_default_stream()
rmm::device_async_resource_ref  mr = cudf::get_current_device_resource_ref() 
)

返回一个新的字符串列,其中包含输入列中字符串的子字符串,为每个字符串使用唯一的范围。

要在每个字符串中检索的字符位置在 startsstops 整数列中指定。如果起始位置超出字符串长度,则该条目返回空字符串。如果停止位置超出字符串末尾,则使用字符串末尾作为该字符串的停止位置。任何设置为 -1 的停止位置值都表示使用字符串末尾作为该字符串的停止位置。

空字符串条目将返回空输出字符串条目。

starts 和 stops 列必须是相同的整数类型,并且必须与字符串列的大小相同。

示例
s = ["hello", "goodbye"]
starts = [ 1, 2 ]
stops = [ 5, 4 ]
r = slice_strings(s,starts,stops)
r 现在是 ["ello","od"]
异常
cudf::logic_error如果 starts 或 stops 与字符串列的大小不同。
cudf::logic_error如果 starts 和 stops 不是相同的整数类型。
cudf::logic_error如果 starts 或 stops 包含空值。
参数
input用于此操作的字符串列
starts子字符串开始的第一个字符位置
stops子字符串结束的最后一个字符(不包含)位置
stream用于设备内存操作和内核启动的 CUDA 流
mr用于分配返回列的设备内存的设备内存资源
返回值
包含此实例排序元素的新字符串列

◆ slice_strings() [2/2]

std::unique_ptr<column> cudf::strings::slice_strings ( strings_column_view const &  input,
numeric_scalar< size_type > const &  start = numeric_scalarsize_type >(0, false)
numeric_scalar< size_type > const &  stop = numeric_scalarsize_type >(0, false)
numeric_scalar< size_type > const &  step = numeric_scalarsize_type >(1)
rmm::cuda_stream_view  stream = cudf::get_default_stream()
rmm::device_async_resource_ref  mr = cudf::get_current_device_resource_ref() 
)

返回一个新的字符串列,其中包含输入列中字符串的子字符串。

要在每个字符串中检索的字符位置是 [start,stop)。如果起始位置超出字符串长度,则该条目返回空字符串。如果停止位置超出字符串末尾,则使用字符串末尾作为该字符串的停止位置。

空字符串条目将返回空输出字符串条目。

示例
s = ["hello", "goodbye"]
r = slice_strings(s,2,6)
r 现在是 ["llo","odby"]
r2 = slice_strings(s,2,5,2)
r2 现在是 ["lo","ob"]
参数
input用于此操作的字符串列
start子字符串开始的第一个字符位置
stop子字符串结束的最后一个字符(不包含)位置
step检索到的输入字符之间的距离
stream用于设备内存操作和内核启动的 CUDA 流
mr用于分配返回列的设备内存的设备内存资源
返回值
包含此实例排序元素的新字符串列