Функция io.decode_csv
Функция io.decode_csv преобразует одну или несколько
строк в формате CSV в список тензоров. Первым параметром
функция принимает тензор строк, содержащий CSV-данные.
Вторым параметром передается список объектов
tf.io.FixedLenFeature, описывающих колонки.
Третьим параметром можно передать строку с разделителем
колонок, по умолчанию используется запятая.
Синтаксис
tf.io.decode_csv(records, record_defaults, [field_delim], [use_quote_delim], [na_value], [select_cols])
Пример
Давайте декодируем простую CSV-строку с тремя числовыми колонками:
import tensorflow as tf
records = tf.constant(['1,2,3', '4,5,6'])
defaults = [tf.constant([], dtype=tf.int32), tf.constant([], dtype=tf.int32), tf.constant([], dtype=tf.int32)]
res = tf.io.decode_csv(records, record_defaults=defaults)
print(res)
Результат выполнения кода:
[<tf.Tensor: shape=(2,), dtype=int32, numpy=array([1, 4], dtype=int32)>, <tf.Tensor: shape=(2,), dtype=int32, numpy=array([2, 5], dtype=int32)>, <tf.Tensor: shape=(2,), dtype=int32, numpy=array([3, 6], dtype=int32)>]
Пример
Давайте декодируем CSV-строку со строковыми и числовыми колонками:
import tensorflow as tf
records = tf.constant(['abcde,1', 'model.keras,2'])
defaults = [tf.constant([''], dtype=tf.string), tf.constant([], dtype=tf.int32)]
res = tf.io.decode_csv(records, record_defaults=defaults)
print(res)
Результат выполнения кода:
[<tf.Tensor: shape=(2,), dtype=string, numpy=array([b'abcde', b'model.keras'], dtype=object)>, <tf.Tensor: shape=(2,), dtype=int32, numpy=array([1, 2], dtype=int32)>]
Смотрите также
-
функцию
read_file,
которая читает содержимое файла в тензор -
функцию
write_file,
которая записывает данные в файл -
функцию
decode_base64,
которая декодирует строки Base64 в тензоры -
функцию
parse_tensor,
которая преобразует сериализованный тензор в тензор