> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wandb.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Class: Dataset<R>

> TypeScript SDK reference

[weave](../) / Dataset

Dataset object with easy saving and automatic versioning

`Example`

```ts theme={null}
// Create a dataset
const dataset = new Dataset({
  id: 'grammar-dataset',
  rows: [
    { id: '0', sentence: "He no likes ice cream.", correction: "He doesn't like ice cream." },
    { id: '1', sentence: "She goed to the store.", correction: "She went to the store." },
    { id: '2', sentence: "They plays video games all day.", correction: "They play video games all day." }
  ]
})

// Access a specific example
const exampleLabel = dataset.getRow(2).sentence;

// Save the dataset
const ref = await dataset.save()
```

## Type parameters

| Name | Type                 |
| :--- | :------------------- |
| `R`  | extends `DatasetRow` |

## Hierarchy

* [`WeaveObject`](./weaveobject)

  ↳ `Dataset`

## Table of contents

### Constructors

* [constructor](./dataset#constructor)

### Properties

* [\_\_savedRef](./dataset#__savedref)
* [rows](./dataset#rows)

### Accessors

* [description](./dataset#description)
* [length](./dataset#length)
* [name](./dataset#name)

### Methods

* [\[asyncIterator\]](./dataset#\[asynciterator])
* [getRow](./dataset#getrow)
* [save](./dataset#save)
* [saveAttrs](./dataset#saveattrs)

## Constructors

### constructor

• **new Dataset**\<`R`>(`parameters`): [`Dataset`](./dataset)\<`R`>

#### Type parameters

| Name | Type                 |
| :--- | :------------------- |
| `R`  | extends `DatasetRow` |

#### Parameters

| Name         | Type                      |
| :----------- | :------------------------ |
| `parameters` | `DatasetParameters`\<`R`> |

#### Returns

[`Dataset`](./dataset)\<`R`>

#### Overrides

[WeaveObject](./weaveobject).[constructor](./weaveobject#constructor)

#### Defined in

[dataset.ts:51](https://github.com/wandb/weave/blob/62f1e46098095776ee29b730ad10b3b3d1a68307/sdks/node/src/dataset.ts#L51)

## Properties

### \_\_savedRef

• `Optional` **\_\_savedRef**: [`ObjectRef`](./objectref) | `Promise`\<[`ObjectRef`](./objectref)>

#### Inherited from

[WeaveObject](./weaveobject).[\_\_savedRef](./weaveobject#__savedref)

#### Defined in

[weaveObject.ts:73](https://github.com/wandb/weave/blob/62f1e46098095776ee29b730ad10b3b3d1a68307/sdks/node/src/weaveObject.ts#L73)

***

### rows

• **rows**: `Table`\<`R`>

#### Defined in

[dataset.ts:49](https://github.com/wandb/weave/blob/62f1e46098095776ee29b730ad10b3b3d1a68307/sdks/node/src/dataset.ts#L49)

## Accessors

### description

• `get` **description**(): `undefined` | `string`

#### Returns

`undefined` | `string`

#### Inherited from

WeaveObject.description

#### Defined in

[weaveObject.ts:100](https://github.com/wandb/weave/blob/62f1e46098095776ee29b730ad10b3b3d1a68307/sdks/node/src/weaveObject.ts#L100)

***

### length

• `get` **length**(): `number`

#### Returns

`number`

#### Defined in

[dataset.ts:64](https://github.com/wandb/weave/blob/62f1e46098095776ee29b730ad10b3b3d1a68307/sdks/node/src/dataset.ts#L64)

***

### name

• `get` **name**(): `string`

#### Returns

`string`

#### Inherited from

WeaveObject.name

#### Defined in

[weaveObject.ts:96](https://github.com/wandb/weave/blob/62f1e46098095776ee29b730ad10b3b3d1a68307/sdks/node/src/weaveObject.ts#L96)

## Methods

### \[asyncIterator]

▸ **\[asyncIterator]**(): `AsyncIterator`\<`any`, `any`, `undefined`>

#### Returns

`AsyncIterator`\<`any`, `any`, `undefined`>

#### Defined in

[dataset.ts:68](https://github.com/wandb/weave/blob/62f1e46098095776ee29b730ad10b3b3d1a68307/sdks/node/src/dataset.ts#L68)

***

### getRow

▸ **getRow**(`index`): `R`

#### Parameters

| Name    | Type     |
| :------ | :------- |
| `index` | `number` |

#### Returns

`R`

#### Defined in

[dataset.ts:74](https://github.com/wandb/weave/blob/62f1e46098095776ee29b730ad10b3b3d1a68307/sdks/node/src/dataset.ts#L74)

***

### save

▸ **save**(): `Promise`\<[`ObjectRef`](./objectref)>

#### Returns

`Promise`\<[`ObjectRef`](./objectref)>

#### Defined in

[dataset.ts:60](https://github.com/wandb/weave/blob/62f1e46098095776ee29b730ad10b3b3d1a68307/sdks/node/src/dataset.ts#L60)

***

### saveAttrs

▸ **saveAttrs**(): `Object`

#### Returns

`Object`

#### Inherited from

[WeaveObject](./weaveobject).[saveAttrs](./weaveobject#saveattrs)

#### Defined in

[weaveObject.ts:77](https://github.com/wandb/weave/blob/62f1e46098095776ee29b730ad10b3b3d1a68307/sdks/node/src/weaveObject.ts#L77)
