我目前正在做声音注释,我想做这个。
但是,碰巧在一个注释中,有几个物种。所以我有一个数据框,其中一列用于注释,一列用于时间间隔,其他的都没有关系。
我正在研究 R
Ex:A_B_C,我想将这一行 A_B_C 转换为 A、B 和 C 3 行,我想在已创建的其他行中保留第一行的其他信息。
(如果有任何错误,请原谅我的英语)
我已经看到可以通过下划线进行拆分。但是在这段代码中:
df$new <- substr(df$x, regexpr("_", df$x)+1, length(df$x))
它只创建一个新列。我不想这样做。
这是我的第一篇文章,如果不是很清楚请见谅
{tidyr} 包有一个函数
separate_rows()
它将拆分一列并将结果作为行插入,保留来自其他列的信息。
library(dplyr)
library(tidyr)
mydat <- tibble(x = "A_B_C", y = 1)
mydat %>%
separate_rows(x, sep = "_")
#> # A tibble: 3 × 2
#> x y
#> <chr> <dbl>
#> 1 A 1
#> 2 B 1
#> 3 C 1
创建于 2023-03-13 与 reprex v2.0.2