[英]Extract number after specific character in dataframe
我有一個具有這種結構的數據框:
var
A1sometext_r2
BXother_r11
A1sometext_r4
C7sometext_r8
並且想要一個新列來存儲“r”后面的數字
var new
A1some9text_r2 2
BXother_r11 11
A1sometext_r4 4
C7sometext_r8 8
我正在嘗試合並到 pipe 中,所以 Tidyverse 會更好
謝謝!
你可以這樣做:
tibble(var = paste0('lala_r', sample(1:20, 15))) %>%
dplyr::mutate(
new = stringr::str_replace_all(var, '.*_r([0-9]*)$', '\\1'),
new = as.integer(new)
)
Output:
# A tibble: 15 x 2
var new
<chr> <int>
1 lala_r8 8
2 lala_r11 11
3 lala_r16 16
4 lala_r7 7
5 lala_r1 1
6 lala_r10 10
7 lala_r12 12
8 lala_r9 9
9 lala_r18 18
10 lala_r6 6
11 lala_r3 3
12 lala_r20 20
13 lala_r4 4
14 lala_r14 14
15 lala_r15 15
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.