separate_rows()
已被 separate_longer_delim()
取代,因为它具有与其他单独函数更加一致的 API。被取代的函数不会消失,但只会收到关键的错误修复。
如果变量包含具有多个分隔值的观测值,separate_rows()
会分隔这些值并将每个值放在其自己的行中。
参数
- data
-
一个 DataFrame 。
- ...
-
<
tidy-select
> 跨多行分隔的列 - sep
-
分隔折叠值的分隔符。
- convert
-
如果
TRUE
会自动在键列上运行type.convert()
。如果列类型实际上是数字、整数或逻辑,这非常有用。
例子
df <- tibble(
x = 1:3,
y = c("a", "d,e,f", "g,h"),
z = c("1", "2,3,4", "5,6")
)
separate_rows(df, y, z, convert = TRUE)
#> # A tibble: 6 × 3
#> x y z
#> <int> <chr> <int>
#> 1 1 a 1
#> 2 2 d 2
#> 3 2 e 3
#> 4 2 f 4
#> 5 3 g 5
#> 6 3 h 6
# Now recommended
df %>%
separate_longer_delim(c(y, z), delim = ",")
#> # A tibble: 6 × 3
#> x y z
#> <int> <chr> <chr>
#> 1 1 a 1
#> 2 2 d 2
#> 3 2 e 3
#> 4 2 f 4
#> 5 3 g 5
#> 6 3 h 6
相关用法
- R tidyr separate_longer_delim 将字符串拆分为行
- 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等大神的英文原创作品 Separate a collapsed column into multiple rows。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。