Spec-Zone.ru › TensorFlow

tf.raw_ops.Substr

Возвращает подстроки из Tensor строк.

Просмотр псевдонимов

Псевдонимы для миграции

См. Руководство по миграции для получения дополнительных сведений.

tf.compat.v1.raw_ops.Substr

tf.raw_ops.Substr(
    input, pos, len, unit='BYTE', name=None
)

Для каждой строки в входном Tensor создаёт подстроку, начиная с индекса pos с общей длиной len.

Если len определяет подстроку, которая выйдет за пределы длины входной строки, или если len отрицательно, используется как можно больше символов.

Отрицательный pos указывает расстояние в строке назад от конца.

Если pos задаёт индекс, который выходит за пределы диапазона для любой из входных строк, генерируется InvalidArgumentError.

pos и len должны иметь одинаковую форму, в противном случае при создании операции генерируется ValueError.

Примечание: Substr поддерживает вещание до двух измерений. Подробнее о вещании здесь

Примеры

Использование скалярных pos и len:

input = [b'Hello', b'World']
position = 1
length = 3

output = [b'ell', b'orl']

Использование pos и len с такой же формой, как у input:

input = [[b'ten', b'eleven', b'twelve'],
         [b'thirteen', b'fourteen', b'fifteen'],
         [b'sixteen', b'seventeen', b'eighteen']]
position = [[1, 2, 3],
            [1, 2, 3],
            [1, 2, 3]]
length =   [[2, 3, 4],
            [4, 3, 2],
            [5, 5, 5]]

output = [[b'en', b'eve', b'lve'],
          [b'hirt', b'urt', b'te'],
          [b'ixtee', b'vente', b'hteen']]

Вещание pos и len на input:

input = [[b'ten', b'eleven', b'twelve'],
         [b'thirteen', b'fourteen', b'fifteen'],
         [b'sixteen', b'seventeen', b'eighteen'],
         [b'nineteen', b'twenty', b'twentyone']]
position = [1, 2, 3]
length =   [1, 2, 3]

output = [[b'e', b'ev', b'lve'],
          [b'h', b'ur', b'tee'],
          [b'i', b've', b'hte'],
          [b'i', b'en', b'nty']]

Вещание input на pos и len:

input = b'thirteen'
position = [1, 5, 7]
length =   [3, 2, 1]

output = [b'hir', b'ee', b'n']
Исключения
  • ValueError: Если первый аргумент не может быть преобразован в тензор типа dtype string.
  • InvalidArgumentError: Если индексы находятся вне диапазона.
  • ValueError: Если pos и len не имеют одинаковой формы.
Аргументы
input A Tensor типа string. Тензор строк
pos A Tensor. Должен быть одного из следующих типов: int32, int64. Скаляр, определяющий позицию первого символа в каждой подстроке
len A Tensor. Должен иметь тот же тип, что и pos. Скаляр, определяющий количество символов, которые нужно включить в каждую подстроку
unit Необязательный string из: "BYTE", "UTF8_CHAR". По умолчанию "BYTE". Единица, используемая для создания подстроки. Один из: "BYTE" (для определения позиции и длины байтами) или "UTF8_CHAR" (для UTF-8 кодированных кодовых точек Юникода). По умолчанию "BYTE". Результаты не определены, если unit=UTF8_CHAR и строки input не содержат структурно корректного UTF-8.
name Имя операции (необязательно).
Возвращаемое значение
A Tensor типа string.

© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/raw_ops/Substr

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API