字符串切片#

分组 切片

函数

std::unique_ptr<column> 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())#

返回一个新的字符串列,其中包含所提供列中字符串的子字符串。

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

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

Example:
s = ["hello", "goodbye"]
r = slice_strings(s,2,6)
r is now ["llo","odby"]
r2 = slice_strings(s,2,5,2)
r2 is now ["lo","ob"]
参数:
  • input – 用于此操作的字符串列

  • start – 子字符串的起始字符位置

  • stop – 子字符串的结束字符位置 (不包含)

  • step – 检索到的输入字符之间的距离

  • stream – 用于设备内存操作和内核启动的 CUDA 流

  • mr – 用于分配返回列的设备内存的设备内存资源

返回:

新的字符串列,其中包含此实例的子字符串元素

std::unique_ptr<column> 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 列必须是相同的整数类型,并且必须与字符串列具有相同的大小。

Example:
s = ["hello", "goodbye"]
starts = [ 1, 2 ]
stops = [ 5, 4 ]
r = slice_strings(s,starts,stops)
r is now ["ello","od"]
抛出:
参数:
  • input – 用于此操作的字符串列

  • starts – 子字符串的起始字符位置

  • stops – 子字符串的结束字符位置 (不包含)

  • stream – 用于设备内存操作和内核启动的 CUDA 流

  • mr – 用于分配返回列的设备内存的设备内存资源

返回:

新的字符串列,其中包含此实例的子字符串元素