Transposing a dataframe maintaining the first column as heading

jon picture jon · Nov 1, 2011 · Viewed 43.6k times · Source

I have a big dataframe, but small example would be like this:

mydf <- data.frame(A = c(letters[1:10]), M1 = c(11:20), M2 = c(31:40), M3 = c(41:50))

I want to transpose the dataframe and maintain the column 1 (A) as column heading ( letter[1:10]) as variable names. The following are scratch trials of unsuccessful codes.

tmydf = data.frame(t(mydf))
names(tmydf) <- tmydf[1,]

Thanks;

Answer

Ramnath picture Ramnath · Nov 1, 2011

Here is one way

tmydf = setNames(data.frame(t(mydf[,-1])), mydf[,1])