> ## Documentation Index
> Fetch the complete documentation index at: https://wb-21fd5541-run-filter-ui-updates.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Table

export const GitHubLink = ({url}) => <a href={url} target="_blank" rel="noopener noreferrer" className="github-source-link">
    <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor" xmlns="http://www.w3.org/2000/svg">
      <path d="M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z" />
    </svg>
    Source GitHub
  </a>;

<GitHubLink url="https://github.com/wandb/wandb/blob/main/wandb/sdk/data_types/table.py" />

## <kbd>class</kbd> `Table`

La classe Table permet d’afficher et d’analyser des données tabulaires.

Contrairement aux feuilles de calcul traditionnelles, les Tables prennent en charge de nombreux types de données : des valeurs scalaires, des chaînes de caractères, des tableaux NumPy et la plupart des sous-classes de `wandb.data_types.Media`. Cela signifie que vous pouvez intégrer `Images`, `Video`, `Audio` et d’autres types de médias enrichis et annotés directement dans les Tables, aux côtés d’autres valeurs scalaires plus classiques.

Cette classe est la classe principale utilisée pour générer des W\&B Tables [https://docs.wandb.ai/models/tables](https://docs.wandb.ai/models/tables)

### <kbd>méthode</kbd> `Table.__init__`

```python theme={null}
__init__(
    columns=None,
    data=None,
    rows=None,
    dataframe=None,
    dtype=None,
    optional=True,
    allow_mixed_types=False,
    log_mode: "Literal['IMMUTABLE', 'MUTABLE', 'INCREMENTAL'] | None" = 'IMMUTABLE'
)
```

Initialise un objet Table.

Le paramètre `rows` est disponible pour des raisons de compatibilité et ne doit pas être utilisé. La classe Table utilise `data` pour reproduire l'API Pandas.

**Arguments :**

* `columns`:  (List\[str]) Noms des colonnes du tableau.  Valeurs par défaut : \["Input", "Output", "Expected"].
* `data`:  (List\[List\[any]]) Tableau 2D de valeurs orienté par lignes.
* `dataframe`:  (pandas.DataFrame) Objet DataFrame utilisé pour créer le tableau.  Lorsqu'il est défini, les arguments `data` et `columns` sont ignorés.
* `rows`:  (List\[List\[any]]) Tableau 2D de valeurs orienté par lignes.
* `optional`:  (Union\[bool,List\[bool]]) Détermine si les valeurs `None` sont autorisées. Valeur par défaut : True
  * S'il s'agit d'une valeur booléenne unique, le caractère facultatif est appliqué à toutes les colonnes spécifiées lors de la création
  * S'il s'agit d'une liste de valeurs booléennes, le caractère facultatif est appliqué à chaque colonne ; la liste doit avoir la même longueur que `columns`
* `allow_mixed_types`:  (bool) Détermine si les colonnes peuvent contenir des types mixtes  (désactive la validation de type). Valeur par défaut : False
* `log_mode`:  Optional\[str] Contrôle la façon dont la Table est enregistrée lorsque des modifications surviennent.  Options :
  * "IMMUTABLE" (par défaut) : la Table ne peut être enregistrée qu'une seule fois ; les tentatives d'enregistrement suivantes après modification du tableau seront sans effet.
  * "MUTABLE" : la Table peut être enregistrée à nouveau après des modifications, créant une nouvelle version d'artifact à chaque enregistrement.
  * "INCREMENTAL" : les données de la Table sont enregistrées de façon incrémentielle, chaque enregistrement créant une nouvelle entrée d'artifact contenant les nouvelles données depuis le dernier enregistrement.

***

### <kbd>méthode</kbd> `Table.add_column`

```python theme={null}
add_column(name, data, optional=False)
```

Ajoute une colonne de données au tableau.

**Arguments :**

* `name`:  (str) - le nom unique de la colonne
* `data`:  (list | np.array) - une colonne de données homogènes
* `optional`:  (bool) - si les valeurs nulles sont autorisées

***

### <kbd>méthode</kbd> `Table.add_computed_columns`

```python theme={null}
add_computed_columns(fn)
```

Ajoute une ou plusieurs colonnes calculées à partir des données existantes.

**Arguments :**

* `fn` : fonction qui accepte un ou deux paramètres, `ndx` (int) et `row` (dict), et qui doit renvoyer un `dict` représentant les nouvelles colonnes de cette ligne, avec pour clés les noms des nouvelles colonnes.
  * `ndx` est un entier représentant l’index de la ligne. Il est inclus uniquement si `include_ndx` est défini sur `True`.
  * `row` est un dictionnaire dont les clés correspondent aux colonnes existantes

***

### <kbd>méthode</kbd> `Table.add_data`

```python theme={null}
add_data(*data)
```

Ajoute une nouvelle ligne de données au tableau.

Le nombre maximal de lignes d’un tableau est déterminé par `wandb.Table.MAX_ARTIFACT_ROWS`.

Le nombre d’éléments des données doit correspondre au nombre de colonnes du tableau.

***

### <kbd>méthode</kbd> `Table.add_row`

```python theme={null}
add_row(*row)
```

Obsolète. Utilisez plutôt la méthode `Table.add_data`.

***

### <kbd>méthode</kbd> `Table.cast`

```python theme={null}
cast(col_name, dtype, optional=False)
```

Convertit une colonne vers un type de données spécifique.

Il peut s'agir d'une classe Python standard, d'un type interne de W\&B ou d'un objet d'exemple, comme une instance de wandb.Image ou de wandb.Classes.

**Arguments :**

* `col_name` (str):  Le nom de la colonne à convertir.
* `dtype` (class, wandb.wandb\_sdk.interface.\_dtypes.Type, any):  Le type cible.
* `optional` (bool):  Indique si la colonne doit accepter des valeurs None.

***

### <kbd>méthode</kbd> `Table.get_column`

```python theme={null}
get_column(name, convert_to=None)
```

Récupère une colonne du tableau et, éventuellement, la convertit en objet NumPy.

**Arguments :**

* `name`:  (str) - le nom de la colonne
* `convert_to`:  (str, facultatif)
  * "numpy": convertit les données sous-jacentes en objet NumPy

***

### <kbd>méthode</kbd> `Table.get_dataframe`

```python theme={null}
get_dataframe()
```

Renvoie un `pandas.DataFrame` contenant le tableau.

***

### <kbd>méthode</kbd> `Table.get_index`

```python theme={null}
get_index()
```

Renvoie un tableau d’indices de lignes à utiliser dans d’autres tableaux afin de créer des liens.

***
