文件 | 函数
复制

文件

文件  repeat_strings.hpp
 用于复制字符串的 Strings API。
 

函数

std::unique_ptr< string_scalarcudf::strings::repeat_string (string_scalar const &input, size_type repeat_times, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref())
 将给定的字符串 scalar 重复给定的次数。 更多...
 
std::unique_ptr< columncudf::strings::repeat_strings (strings_column_view const &input, size_type repeat_times, 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::repeat_strings (strings_column_view const &input, column_view const &repeat_times, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref())
 根据另一个数值列中给定的次数重复给定字符串列中的每个字符串。 更多...
 

详细描述

函数文档

◆ repeat_string()

std::unique_ptr<string_scalar> cudf::strings::repeat_string ( string_scalar const &  input,
size_type  repeat_times,
rmm::cuda_stream_view  stream = cudf::get_default_stream(),
rmm::device_async_resource_ref  mr = cudf::get_current_device_resource_ref() 
)

将给定的字符串 scalar 重复给定的次数。

通过 repeat_times 参数指定的次数重复输入字符串,从而生成一个输出字符串 scalar。

特殊情况

  • 如果 repeat_times 不是正值,将返回一个空的(有效的)字符串 scalar。
  • 无效的输入 scalar 无论 repeat_times 参数的值如何,总是会产生无效的输出 scalar。
示例
s = '123XYZ-'
out = repeat_strings(s, 3)
out 是 '123XYZ-123XYZ-123XYZ-'
异常
std::overflow_error如果输出字符串 scalar 的大小超过 scalar 可存储的最大值:input.size() * repeat_times > size_type 的最大值
参数
input包含要重复字符串的 scalar
repeat_times输入字符串重复的次数
stream用于设备内存操作和内核启动的 CUDA stream
mr用于分配返回字符串 scalar 的设备内存资源
返回值
重复输入字符串的新字符串 scalar

◆ repeat_strings() [1/2]

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

根据另一个数值列中给定的次数重复给定字符串列中的每个字符串。

通过 repeat_times 数值列中相应行给定的次数重复每个输入字符串,从而生成一个输出字符串列。

特殊情况

  • 任何 null 行(来自输入字符串列或 repeat_times 列)总是会产生一个 null 输出字符串。
  • 如果 repeat_times 列中的任何值不是正数且其对应的输入字符串不为 null,则输出字符串将为空字符串。
示例
strs = ['aa', null, '', 'bbc-']
repeat_times = [ 1, 2, 3, 4 ]
out = repeat_strings(strs, repeat_times)
out 是 ['aa', null, '', 'bbc-bbc-bbc-bbc-']
异常
cudf::logic_error如果输入 repeat_times 不是整数类型
cudf::logic_error如果输入列的大小不同。
参数
input包含要重复字符串的列
repeat_times包含每行的相应输入字符串重复次数的列
stream用于设备内存操作和内核启动的 CUDA stream
mr用于分配返回字符串列的设备内存资源
返回值
包含重复字符串的新列。

◆ repeat_strings() [2/2]

std::unique_ptr<column> cudf::strings::repeat_strings ( strings_column_view const &  input,
size_type  repeat_times,
rmm::cuda_stream_view  stream = cudf::get_default_stream(),
rmm::device_async_resource_ref  mr = cudf::get_current_device_resource_ref() 
)

将给定字符串列中的每个字符串重复给定的次数。

通过 repeat_times 参数给定的次数重复输入字符串列中的每个字符串,从而生成一个输出字符串列。

特殊情况

  • 如果 repeat_times 不是正数,则非 null 的输入字符串总是会产生一个空输出字符串。
  • 无论 repeat_times 参数的值如何,null 输入字符串总是会产生一个 null 输出字符串。
示例
strs = ['aa', null, '', 'bbc']
out = repeat_strings(strs, 3)
out 是 ['aaaaaa', null, '', 'bbcbbcbbc']
参数
input包含要重复字符串的列
repeat_times每个输入字符串重复的次数
stream用于设备内存操作和内核启动的 CUDA stream
mr用于分配返回字符串列的设备内存资源
返回值
包含重复字符串的新列