将2x3 df转换为矢量

时间:2019-03-28 17:05:19

标签: r dplyr tidyverse

我有一个df,例如:

tibble::tribble(
  ~names, ~values,
    "aa",       1,
    "bb",       2,
    "cc",       3
  )

我希望它转换为矢量,如下所示:

vector <- c(`aa` = 1, `bb` = 2, `cc` = 3)

如何在tidyverse中执行此操作?

1 个答案:

答案 0 :(得分:1)

我们可以使用deframe

library(tibble)
v1 <- deframe(tbl1)
v1
#  aa bb cc 
#  1  2  3 


identical(v1, vector)
#[1] TRUE

或将base RsetNames一起使用

setNames(tbl1$values, tbl1$names)

数据

tbl1 <- tibble::tribble(
 ~names, ~values,
  "aa",       1,
  "bb",       2,
  "cc",       3
   )