是否有R函数来转换数据框

时间:2019-08-19 08:40:58

标签: r

我下面有一个数据集。我需要对其进行转换,以便变量名称现在是值

>(p2)
   B        D        F 
  36.0    38.93    36.06

我需要像下面这样

p2
Col1   COl2
 B      36.0
 D      38.93
 F      36.06

3 个答案:

答案 0 :(得分:0)

您可以使用Tidyverse中的gather函数:

library(tidyverse)
gather(p2, key = "Col1", value = "Col2")

答案 1 :(得分:0)

data.frame(Col1= names(p2), Col2 = p2, row.names = NULL) 

数据:

p2 <- c(B =36.0, D=38.93, F= 36.06)

答案 2 :(得分:0)

如果这是向量:

p2 <- c(B = 36, D = 38.93, F = 36.06)

然后从tibble包中进行包围可能会有所帮助:

library(tibble)
enframe(p2)
# # A tibble: 3 x 2
# name  value
# <chr> <dbl>
# 1 B      36  
# 2 D      38.9
# 3 F      36.1

您可以使用

更改名称
enframe(p2, "Col1", "Col2")