Hello, readers! In this article, we will be focusing on exploring 2 Easy Ways to convert a Dataframe to a matrix in R programming, in detail.

So, let us begin!

## 1. R data.matrix() function to convert a dataframe to a matrix

R provides us with a built-in function to perform the conversion of a data frame to a matrix. The

With data.matrix() function, we manipulate the structure of the data frame to fit in the schema of a matrix.

That is, as discussed above, a data frame deals with multiple data types in a multi-column structure, while a matrix solely occupies data with fixed rows and columns in a rectangular format.

To comply with this schema, the data.matrix() function internally converts the multi-column structure into a rectangular matrix format and converts the character or factor type data to numeric form.

**Syntax:**

```
data.matrix(dataframe)
```

The data.frame() function converts all the data values of the data frame into a numeric format and then it binds all the values to form a rectangular matrix structure.

**Example:**

```
rm(list = ls())
data = data.frame(
"Name" = c("Jose", "Chris", "Akash"),
"City" = c("Rajasthan", "Texas", "California")
)
print(data)
mat <- data.matrix(data)
print(mat)
```

**Output:**

As seen below, prior to applying the function, the data frame happens to have factor data. After applying the data.matrix() function, the data frame gets converted into a matrix format with all the factor values being altered to numeric form.

```
> print(data)
Name City
1 Jose Rajasthan
2 Chris Texas
3 Akash California
>
> mat <- data.matrix(data)
> print(mat)
Name City
[1,] 3 2
[2,] 2 3
[3,] 1 1
```

## 2. R as.matrix() function to convert data frame to matrix

With as.matrix() function, we can convert any R object or data structure to a matrix type. By this, we mean to say that a list of values or even a data frame can be manipulated to matrix type.

Unlike data.matrix() function, R

**Example 1:**

In this example, we have converted a vector into a matrix form.

```
rm(list = ls())
data <- c(1:10)
as.matrix(data)
```

**Output:**

```
> as.matrix(data)
[,1]
[1,] 1
[2,] 2
[3,] 3
[4,] 4
[5,] 5
[6,] 6
[7,] 7
[8,] 8
[9,] 9
[10,] 10
```

**Example 2:**

In this example, we have converted a data frame to a matrix format. Unlike the data.matrix() function, here we do not witness any manipulation of factor values to numeric format. Only the structure of the data frame gets converted to a matrix form.

```
rm(list = ls())
data = data.frame(
"Name" = c("Jose", "Chris", "Akash"),
"City" = c("Rajasthan", "Texas", "California")
)
print(data)
mat <- as.matrix(data)
print(mat)
```

**Output:**

```
> print(data)
Name City
1 Jose Rajasthan
2 Chris Texas
3 Akash California
>
> print(mat)
Name City
[1,] "Jose" "Rajasthan"
[2,] "Chris" "Texas"
[3,] "Akash" "California"
```

## Conclusion

By this, we have come to the end of this topic. Feel free to comment below, in case you come across any question.

For more such posts related to R programming, Stay tuned!

Till then, Happy Learning!! ðŸ™‚