将列名转换为新行

convert column names into a new row

我有一个如下所示的 ,它与 mtcars 一起工作得很好,但我想知道是否有比将 Species 列转换为字符更好的解决方案。非常感谢

df <- head(iris); df
rbind(newRow = colnames(df), df) 

  Sepal.Length Sepal.Width Petal.Length Petal.Width Species
  Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1          5.1         3.5          1.4         0.2  setosa
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

我们也可以

library(data.table)
rbindlist(list(as.list(names(df)), df))