# Documentation

### This is machine translation

Translated by
Mouseover text to see original. Click the button below to return to the English version of the page.

# table2struct

Convert table to structure array

## Syntax

``S = table2struct(T)``
``S = table2struct(T,'ToScalar',true)``

## Description

example

````S = table2struct(T)` converts the table, `T`, to a structure array, `S`. Each variable of `T` becomes a field in `S`. If `T` is an `m`-by-`n` table, then `S` is a `m`-by-1 structure array with `n` fields.```

example

````S = table2struct(T,'ToScalar',true)` converts the table, `T`, to a scalar structure `S`. Each variable of `T` becomes a field in `S`. If `T` is a `m`-by-`n` table, then `S` has `n` fields, each of which has `m` rows.```

## Examples

collapse all

Create a table, `T`, with five rows and three variables.

```T = table(categorical({'M';'M';'F';'F';'F'}),[38;43;38;40;49],... [124 93;109 77; 125 83; 117 75; 122 80],... 'VariableNames',{'Gender' 'Age' 'BloodPressure'})```
```T=5×3 table Gender Age BloodPressure ______ ___ _____________ M 38 124 93 M 43 109 77 F 38 125 83 F 40 117 75 F 49 122 80 ```

Convert `T` to a structure array.

`S = table2struct(T)`
```S = 5x1 struct array with fields: Gender Age BloodPressure ```

The structure is 5-by-1, corresponding to the five rows of the table, `T`. The three fields of `S` correspond to the three variables from `T`.

Display the field data for the first element of `S`.

`S(1)`
```ans = struct with fields: Gender: M Age: 38 BloodPressure: [124 93] ```

The information corresponds to the first row of the table.

Create a table, `T`, with five rows and three variables.

```T = table(categorical({'M';'M';'F';'F';'F'}),[38;43;38;40;49],... [124 93;109 77; 125 83; 117 75; 122 80],... 'VariableNames',{'Gender' 'Age' 'BloodPressure'})```
```T=5×3 table Gender Age BloodPressure ______ ___ _____________ M 38 124 93 M 43 109 77 F 38 125 83 F 40 117 75 F 49 122 80 ```

Convert `T` to a scalar structure.

`S = table2struct(T,'ToScalar',true)`
```S = struct with fields: Gender: [5x1 categorical] Age: [5x1 double] BloodPressure: [5x2 double] ```

The data in the fields of the scalar structure are 5-by-1, corresponding to the five rows in the table `T`.

Display the data for the field `BloodPressure`.

`S.BloodPressure`
```ans = 5×2 124 93 109 77 125 83 117 75 122 80 ```

The structure field `BloodPressure` contains all of the data that was in the variable of the same name from table `T`.

Create a table, `T`, that includes row names.

```T = table(categorical({'M';'M';'F';'F';'F'}),[38;43;38;40;49],... [124 93;109 77; 125 83; 117 75; 122 80],... 'VariableNames',{'Gender' 'Age' 'BloodPressure'},... 'RowNames',{'Smith' 'Johnson' 'Williams' 'Jones' 'Brown'})```
```T=5×3 table Gender Age BloodPressure ______ ___ _____________ Smith M 38 124 93 Johnson M 43 109 77 Williams F 38 125 83 Jones F 40 117 75 Brown F 49 122 80 ```

Convert `T` to a scalar structure.

`S = table2struct(T,'ToScalar',true)`
```S = struct with fields: Gender: [5x1 categorical] Age: [5x1 double] BloodPressure: [5x2 double] ```

Add a field for the row names from the table.

`S.RowNames = T.Properties.RowNames`
```S = struct with fields: Gender: [5x1 categorical] Age: [5x1 double] BloodPressure: [5x2 double] RowNames: {5x1 cell} ```

If `S` is a nonscalar structure, use `[S.RowNames] = T.Properties.RowNames{:}` to include a field with the row names from the table.

## Input Arguments

collapse all

Input table, specified as a table.