> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/gradio-app/gradio/llms.txt
> Use this file to discover all available pages before exploring further.

# Dataset

> Display example data in a gallery or table

The Dataset component displays example data that users can click to populate inputs.

## Basic usage

```python theme={null}
import gradio as gr

with gr.Blocks() as demo:
    text_input = gr.Textbox()
    examples = gr.Dataset(
        components=[text_input],
        samples=[
            ["Hello"],
            ["How are you?"],
            ["Goodbye"]
        ]
    )
    
    examples.click(
        lambda x: x,
        inputs=examples,
        outputs=text_input
    )
    
demo.launch()
```

## Constructor

<ParamField path="components" type="Sequence[Component] | list[str] | None" default="None">
  Components that correspond to each column
</ParamField>

<ParamField path="samples" type="list[list[Any]] | None" default="None">
  Example data. Each inner list represents one example
</ParamField>

<ParamField path="headers" type="list[str] | None" default="None">
  Column headers. If None, inferred from component labels
</ParamField>

<ParamField path="type" type="Literal['values', 'index', 'tuple']" default="'values'">
  What to pass when clicked:

  * `"values"` - The example values
  * `"index"` - The example index
  * `"tuple"` - Both (index, values)
</ParamField>

<ParamField path="layout" type="Literal['gallery', 'table'] | None" default="None">
  Display layout:

  * `"gallery"` - Grid of cards
  * `"table"` - Table view

  Defaults to gallery for single component, table for multiple
</ParamField>

<ParamField path="samples_per_page" type="int" default="10">
  Number of examples per page
</ParamField>

## Events

* **click** - Triggered when example is clicked
* **select** - Triggered when example is selected

## Example

```python theme={null}
import gradio as gr

def process(text, number):
    return f"{text}: {number}"

with gr.Blocks() as demo:
    text = gr.Textbox()
    num = gr.Number()
    output = gr.Textbox()
    
    examples = gr.Dataset(
        components=[text, num],
        samples=[
            ["Hello", 42],
            ["World", 99],
            ["Test", 0]
        ],
        headers=["Text", "Number"],
        type="values"
    )
    
    examples.click(
        lambda vals: vals,
        inputs=examples,
        outputs=[text, num]
    )
    
    gr.Button("Submit").click(
        fn=process,
        inputs=[text, num],
        outputs=output
    )
    
demo.launch()
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.