I have a data frame like this:
df
VALUE ABS_CALL DETECTION P-VALUE
1007_s_at "957.729231881542" "P" "0.00486279317241156"
1053_at "320.632701283368" "P" "0.0313356324173416"
117_at "429.842323161046" "P" "0.0170004527476119"
121_at "2395.7364289242" "P" "0.0114473584876183"
1255_g_at "116.493632746934" "A" "0.39799368200131"
1294_at "739.927122116896" "A" "0.0668649772942343"
I want to convert the row names into the first column. Currently I use something like this to make row names as the first column:
d <- df
names <- rownames(d)
rownames(d) <- NULL
data <- cbind(names,d)
Is there a single line to do this?
Or you can use dplyr
's add_rownames
which does the same thing as David's answer:
library(dplyr)
df <- tibble::rownames_to_column(df, "VALUE")
UPDATE (mid-2016): (incorporated to the above)
old function called add_rownames()
has been deprecated and is being replaced by tibble::rownames_to_column()
(same functions, but Hadley refactored dplyr
a bit).