文字列のアンダースコアの前の部分文字列を削除するのに苦労しています。アンダースコアが変わる前のビットとして*(ワイルドカード)を使用したい:
a <- c("foo_5", "bar_7")
a <- gsub("*_", "", a, Perl = TRUE)
結果は次のようになります。
> a
[1] 5 7
「^ * 」または「?」なども試しましたが、実際には機能しませんでした。
次のコードはあなたの例で動作します:
gsub(".*_", "", a)
または、試すこともできます:
gsub("\\S+_", "", a)