当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R tidyr unite 通过将字符串粘贴在一起将多列合并为一列


将多列粘贴到一列中的便捷函数。

用法

unite(data, col, ..., sep = "_", remove = TRUE, na.rm = FALSE)

参数

data

一个 DataFrame 。

col

新列的名称,作为字符串或符号。

该参数通过表达式传递并支持quasiquotation(您可以取消引用字符串和符号)。该名称是从带有 rlang::ensym() 的表达式中捕获的(请注意,这种符号不代表实际对象的接口现在在 tidyverse 中不鼓励使用;我们在这里支持它是为了向后兼容)。

...

< tidy-select > 要合并的列

sep

值之间使用的分隔符。

remove

如果 TRUE ,则从输出数据帧中删除输入列。

na.rm

如果是 TRUE ,则在合并每个值之前将删除缺失值。

也可以看看

separate() ,补码。

例子

df <- expand_grid(x = c("a", NA), y = c("b", NA))
df
#> # A tibble: 4 × 2
#>   x     y    
#>   <chr> <chr>
#> 1 a     b    
#> 2 a     NA   
#> 3 NA    b    
#> 4 NA    NA   

df %>% unite("z", x:y, remove = FALSE)
#> # A tibble: 4 × 3
#>   z     x     y    
#>   <chr> <chr> <chr>
#> 1 a_b   a     b    
#> 2 a_NA  a     NA   
#> 3 NA_b  NA    b    
#> 4 NA_NA NA    NA   
# To remove missing values:
df %>% unite("z", x:y, na.rm = TRUE, remove = FALSE)
#> # A tibble: 4 × 3
#>   z     x     y    
#>   <chr> <chr> <chr>
#> 1 "a_b" a     b    
#> 2 "a"   a     NA   
#> 3 "b"   NA    b    
#> 4 ""    NA    NA   

# Separate is almost the complement of unite
df %>%
  unite("xy", x:y) %>%
  separate(xy, c("x", "y"))
#> # A tibble: 4 × 2
#>   x     y    
#>   <chr> <chr>
#> 1 a     b    
#> 2 a     NA   
#> 3 NA    b    
#> 4 NA    NA   
# (but note `x` and `y` contain now "NA" not NA)
源代码:R/unite.R

相关用法


注:本文由纯净天空筛选整理自Hadley Wickham等大神的英文原创作品 Unite multiple columns into one by pasting strings together。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。