當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R tibble enframe 將向量轉換為數據幀,反之亦然


enframe() 將命名原子向量或列表轉換為一列或兩列數據幀。對於列表,結果將是一個嵌套的 tibble,其列類型為 list 。對於未命名的向量,使用自然序列作為名稱列。

deframe() 將兩列數據幀轉換為命名向量或列表,使用第一列作為名稱,第二列作為值。如果輸入隻有一列,則返回一個未命名的向量。

用法

enframe(x, name = "name", value = "value")

deframe(x)

參數

x

向量(對於 enframe() )或具有一列或兩列的數據幀(對於 deframe() )。

name, value

存儲名稱和值的列的名稱。如果 nameNULL ,則返回 one-column tibble; value 不能是 NULL

對於 enframe()tibble 具有兩列(如果 name 不是 NULL ,則為默認值)或一列(否則)。

對於 deframe() ,一個向量(命名或未命名)。

例子

enframe(1:3)
#> # A tibble: 3 × 2
#>    name value
#>   <int> <int>
#> 1     1     1
#> 2     2     2
#> 3     3     3
enframe(c(a = 5, b = 7))
#> # A tibble: 2 × 2
#>   name  value
#>   <chr> <dbl>
#> 1 a         5
#> 2 b         7
enframe(list(one = 1, two = 2:3, three = 4:6))
#> # A tibble: 3 × 2
#>   name  value    
#>   <chr> <list>   
#> 1 one   <dbl [1]>
#> 2 two   <int [2]>
#> 3 three <int [3]>
deframe(enframe(3:1))
#> 1 2 3 
#> 3 2 1 
deframe(tibble(a = 1:3))
#> [1] 1 2 3
deframe(tibble(a = as.list(1:3)))
#> [[1]]
#> [1] 1
#> 
#> [[2]]
#> [1] 2
#> 
#> [[3]]
#> [1] 3
#> 
源代碼:R/enframe.R

相關用法


注:本文由純淨天空篩選整理自Kirill Müller等大神的英文原創作品 Converting vectors to data frames, and vice versa。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。