Is there a quick way (part of the tidyverse
API perhaps) to turn a row into column names for a data.frame
or tibble
, somewhat similar
janitor::row_to_names() implements this:
library(tidyverse)
iris %>%
head() %>%
janitor::row_to_names(1)
#> 5.1 3.5 1.4 0.2 1
#> 2 4.9 3.0 1.4 0.2 setosa
#> 3 4.7 3.2 1.3 0.2 setosa
#> 4 4.6 3.1 1.5 0.2 setosa
#> 5 5.0 3.6 1.4 0.2 setosa
#> 6 5.4 3.9 1.7 0.4 setosa
Created on 2019-05-29 by the reprex package (v0.2.1)
Well, you can simply: colnames(df) <- as.character(df[1, ])
And if you want to remove this first row: df <- df[-1,]