# as.matrix

##### Convert a data.table to a matrix

Converts a `data.table`

into a `matrix`

, optionally using one
of the columns in the `data.table`

as the `matrix`

`rownames`

.

- Keywords
- array

##### Usage

```
# S3 method for data.table
as.matrix(x, rownames=NULL, rownames.value=NULL, …)
```

##### Arguments

- x
a

`data.table`

- rownames
optional, a single column name or column number to use as the

`rownames`

in the returned`matrix`

. If`TRUE`

the`key`

of the`data.table`

will be used if it is a single column, otherwise the first column in the`data.table`

will be used.- rownames.value
optional, a vector of values to be used as the

`rownames`

in the returned`matrix`

. It must be the same length as`nrow(x)`

.- …
Required to be present because the generic `as.matrix` generic has it. Arguments here are not currently used or passed on by this method.

##### Details

`as.matrix`

is a generic function in base R. It dispatches to
`as.matrix.data.table`

if its `x`

argument is a `data.table`

.

The method for `data.table`

s will return a character matrix if there
are only atomic columns and any non-(numeric/logical/complex) column,
applying `as.vector`

to factors and `format`

to other
non-character columns. Otherwise, the usual coercion hierarchy (logical <
integer < double < complex) will be used, e.g., all-logical data frames
will be coerced to a logical matrix, mixed logical-integer will give an
integer matrix, etc.

##### Value

A new `matrix`

containing the contents of `x`

.

##### See Also

##### Examples

```
# NOT RUN {
DT <- data.table(A = letters[1:10], X = 1:10, Y = 11:20)
as.matrix(DT) # character matrix
as.matrix(DT, rownames = "A")
as.matrix(DT, rownames = 1)
as.matrix(DT, rownames = TRUE)
setkey(DT, A)
as.matrix(DT, rownames = TRUE)
# }
```

*Documentation reproduced from package data.table, version 1.12.0, License: MPL-2.0 | file LICENSE*