用法
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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。