 GFG App
Open App Browser
Continue

# Convert dataframe to list of vectors in R

In this article, we will learn how to convert a dataframe into a list of vectors, such that we can use columns of the dataframes as vectors in the R Programming language.

### Dataframe columns as a list of vectors

as.list() function in R Language is used to convert an object to a list. These objects can be Vectors, Matrices, Factors, and data frames.

Syntax:  as.list( object )

Parameter: Dataframe object in our case

Simply pass our sample dataframe object as an argument in as.list(), which will return a list of vectors.

Example 1:

## R

 `df<-``data.frame``(c1=``c``(1:5),` `               ``c2=``c``(6:10),` `               ``c3=``c``(11:15),` `               ``c4=``c``(16:20))`   `print``(``"Sample Dataframe"``)` `print ``(df)`   `list=``as.list``(df)`   `print``(``"After Conversion of Dataframe into list of Vectors"``)` `print``(list)`

Output:

``` "Sample Dataframe"
c1 c2 c3 c4
1  1  6 11 16
2  2  7 12 17
3  3  8 13 18
4  4  9 14 19
5  5 10 15 20
 "After Conversion of Dataframe into list of Vectors"
\$c1
 1 2 3 4 5
\$c2
  6  7  8  9 10
\$c3
 11 12 13 14 15
\$c4
 16 17 18 19 20```

Example 2:

## R

 `df <- ``data.frame``(name = ``c``(``"Geeks"``, ``"for"``, ``"Geeks"``),` `                ``roll_no = ``c``(10, 20, 30),` `                ``age=``c``(20,21,22)` `                ``)`   `print``(``"Sample Dataframe"``)` `print ``(df)`   `print``(``"Our list after being converted from a dataframe: "``)`   `list=``as.list``(df)` `list`

Output:

``` "Sample Dataframe"
name roll_no age
1 Geeks      10  20
2   for      20  21
3 Geeks      30  22
 "Our list after being converted from a dataframe: "
\$name
 Geeks for   Geeks
Levels: for Geeks
\$roll_no
 10 20 30
\$age
 20 21 22```

### Dataframe rows as a list of vectors

split() function in R Language is used to divide a data vector into groups as defined by the factor provided.

Syntax: split(x, f)

Parameters:

• x: represents data vector or data frame
• f: represents factor to divide the data

Example:

## R

 `df<-``data.frame``(c1=``c``(1:5),` `               ``c2=``c``(6:10),` `               ``c3=``c``(11:15),` `               ``c4=``c``(16:20))`   `print``(``"Sample Dataframe"``)` `print ``(df)`   `print``(``"Result after conversion"``)`   `split``(df, 1:``nrow``(df))`

Output:

``` "Sample Dataframe"
c1 c2 c3 c4
1  1  6 11 16
2  2  7 12 17
3  3  8 13 18
4  4  9 14 19
5  5 10 15 20
 "Result after conversion"
\$`1`
c1 c2 c3 c4
1  1  6 11 16
\$`2`
c1 c2 c3 c4
2  2  7 12 17
\$`3`
c1 c2 c3 c4
3  3  8 13 18
\$`4`
c1 c2 c3 c4
4  4  9 14 19
\$`5`
c1 c2 c3 c4
5  5 10 15 20```

My Personal Notes arrow_drop_up