Convert a dataframe to a vector (by rows)

483    Asked by GuyRodd in Data Science , Asked on Jul 12, 2021

 I have a data frame with numeric entries like this one

test <- data.frame(x = c(26, 21, 20), y = c(34, 29, 28))

How can I get the following vector?

> 26, 34, 21, 29, 20, 28

I was able to get it using the following, but I guess there should be a much more elegant way

X <- test[1, ]
for (i in 2:dim(test)[ 1 ]){
   X <- cbind(X, test[i, ])
   }

Answered by Deepali singh

To convert the r dataframe to vector, you can use the as.vector function with transpose of the data frame.i.e,

test <- data.frame(x = c(26, 21, 20), y = c(34, 29, 28))

as.vector(t(test))

[1] 26 34 21 29 20 28

To convert the columns:

unlist(test)

x1 x2 x3 y1 y2 y3

26 21 20 34 29 28



Your Answer

Interviews

Parent Categories