# tf.data.experimental.TFRecordWriter

<br />

|---|---|
| [![](https://www.tensorflow.org/images/tf_logo_32px.png) TensorFlow 2 version](https://www.tensorflow.org/api_docs/python/tf/data/experimental/TFRecordWriter) | [![](https://www.tensorflow.org/images/GitHub-Mark-32px.png) View source on GitHub](https://github.com/tensorflow/tensorflow/blob/v1.15.0/tensorflow/python/data/experimental/ops/writers.py#L30-L87) |

Writes data to a TFRecord file.

#### View aliases


**Compat aliases for migration**

See
[Migration guide](https://www.tensorflow.org/guide/migrate) for
more details.

[`tf.compat.v1.data.experimental.TFRecordWriter`](https://www.tensorflow.org/api_docs/python/tf/data/experimental/TFRecordWriter), \`tf.compat.v2.data.experimental.TFRecordWriter\`

<br />

    tf.data.experimental.TFRecordWriter(
        filename, compression_type=None
    )

To write a `dataset` to a single TFRecord file:

    dataset = ... # dataset to be written
    writer = tf.data.experimental.TFRecordWriter(PATH)
    writer.write(dataset)

To shard a `dataset` across multiple TFRecord files:

    dataset = ... # dataset to be written

    def reduce_func(key, dataset):
      filename = tf.strings.join([PATH_PREFIX, tf.strings.as_string(key)])
      writer = tf.data.experimental.TFRecordWriter(filename)
      writer.write(dataset.map(lambda _, x: x))
      return tf.data.Dataset.from_tensors(filename)

    dataset = dataset.enumerate()
    dataset = dataset.apply(tf.data.experimental.group_by_window(
      lambda i, _: i % NUM_SHARDS, reduce_func, tf.int64.max
    ))

## Methods

### `write`

[View source](https://github.com/tensorflow/tensorflow/blob/v1.15.0/tensorflow/python/data/experimental/ops/writers.py#L68-L87)

    write(
        dataset
    )

Returns a [`tf.Operation`](https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/Operation) to write a dataset to a file.

<br />

<br />

<br />

| Args ||
|---|---|
| `dataset` | a [`tf.data.Dataset`](https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/data/Dataset) whose elements are to be written to a file |

<br />

<br />

<br />

<br />

| Returns ||
|---|---|
| A [`tf.Operation`](https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/Operation) that, when run, writes contents of `dataset` to a file. ||

<br />