用法
separate_longer_delim(data, cols, delim, ...)
separate_longer_position(data, cols, width, ..., keep_empty = FALSE)
参数
- data
-
一个 DataFrame 。
- cols
-
<
tidy-select
> 要分隔的列。 - delim
-
对于
separate_longer_delim()
,给出值之间的分隔符的字符串。默认情况下,它被解释为固定字符串;使用stringr::regex()
和朋友以其他方式进行拆分。 - ...
-
这些点用于将来的扩展,并且必须为空。
- width
-
对于
separate_longer_position()
,一个整数,给出要分割的字符数。 - keep_empty
-
默认情况下,您将为每个观察获得
ceiling(nchar(x) / width)
行。如果nchar(x)
为零,则意味着整个输入行将从输出中删除。如果要保留所有行,请使用keep_empty = TRUE
将 size-0 元素替换为缺失值。
例子
df <- tibble(id = 1:4, x = c("x", "x y", "x y z", NA))
df %>% separate_longer_delim(x, delim = " ")
#> # A tibble: 7 × 2
#> id x
#> <int> <chr>
#> 1 1 x
#> 2 2 x
#> 3 2 y
#> 4 3 x
#> 5 3 y
#> 6 3 z
#> 7 4 NA
# You can separate multiple columns at once if they have the same structure
df <- tibble(id = 1:3, x = c("x", "x y", "x y z"), y = c("a", "a b", "a b c"))
df %>% separate_longer_delim(c(x, y), delim = " ")
#> # A tibble: 6 × 3
#> id x y
#> <int> <chr> <chr>
#> 1 1 x a
#> 2 2 x a
#> 3 2 y b
#> 4 3 x a
#> 5 3 y b
#> 6 3 z c
# Or instead split by a fixed length
df <- tibble(id = 1:3, x = c("ab", "def", ""))
df %>% separate_longer_position(x, 1)
#> # A tibble: 5 × 2
#> id x
#> <int> <chr>
#> 1 1 a
#> 2 1 b
#> 3 2 d
#> 4 2 e
#> 5 2 f
df %>% separate_longer_position(x, 2)
#> # A tibble: 3 × 2
#> id x
#> <int> <chr>
#> 1 1 ab
#> 2 2 de
#> 3 2 f
df %>% separate_longer_position(x, 2, keep_empty = TRUE)
#> # A tibble: 4 × 2
#> id x
#> <int> <chr>
#> 1 1 ab
#> 2 2 de
#> 3 2 f
#> 4 3 NA
相关用法
- R tidyr separate_rows 将折叠的列分成多行
- R tidyr separate_wider_delim 将字符串拆分为列
- R tidyr separate 使用正则表达式或数字位置将字符列分成多列
- R tidyr spread 将键值对分布在多个列上
- R tidyr extract 使用正则表达式组将字符列提取为多列
- R tidyr chop 砍伐和砍伐
- R tidyr pivot_longer_spec 使用规范将数据从宽转为长
- R tidyr unnest_longer 将列表列取消嵌套到行中
- R tidyr uncount “计数” DataFrame
- R tidyr cms_patient_experience 来自医疗保险和医疗补助服务中心的数据
- R tidyr pivot_wider_spec 使用规范将数据从长轴转向宽轴
- R tidyr replace_na 将 NA 替换为指定值
- R tidyr unnest_wider 将列表列取消嵌套到列中
- R tidyr full_seq 在向量中创建完整的值序列
- R tidyr nest 将行嵌套到 DataFrame 的列表列中
- R tidyr pivot_wider 将数据从长轴转向宽轴
- R tidyr nest_legacy Nest() 和 unnest() 的旧版本
- R tidyr gather 将列收集到键值对中
- R tidyr hoist 将值提升到列表列之外
- R tidyr pivot_longer 将数据从宽转为长
- R tidyr pack 打包和拆包
- R tidyr drop_na 删除包含缺失值的行
- R tidyr fill 用上一个或下一个值填充缺失值
- R tidyr tidyr_legacy 旧名称修复
- R tidyr complete 完成缺少数据组合的 DataFrame
注:本文由纯净天空筛选整理自Hadley Wickham等大神的英文原创作品 Split a string into rows。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。