2

patternとのvar_1使用mutate()を取り除こうとしていgsub()ます。

gsub()文字列しかとらないので、のrowwise()前に使用する必要がありmutate()ます。それ以外の場合は、列の最初のレコードのみが使用されpatternます。

rowwise()プロセスがかなり遅くなるため、使用せずに同じ結果を達成する他の方法があるかどうか疑問に思っています。

test <- data.frame(
  var_1 = c('1AB', '2AB', '3C')
  ,pattern = c('AB','A','C')
)

test %>%
  dplyr::rowwise() %>%
  dplyr::mutate( result = sub(pattern, '', var_1)
          )

望ましい結果:

# A tibble: 3 x 4
# Rowwise: 
  var_1 var_2 pattern result
  <chr> <lgl> <chr>   <chr> 
1 1AB   FALSE AB      1     
2 2AB   TRUE  A       2B    
3 3C    FALSE C       3 
4

2 に答える 2