文字列のRリストがあり、それぞれの最後の要素を取得したい
require(stringr)
string_thing <- "I_AM_STRING"
Split <- str_split(string_thing, "_")
Split[[1]][length(Split[[1]])]
しかし、どうすれば文字列のリストでこれを行うことができますか?
require(stringr)
string_thing <- c("I_AM_STRING", "I_AM_ALSO_STRING_THING")
Split <- str_split(string_thing, "_")
#desired result
answer <- c("STRING", "THING")
ありがとう
あなたの質問へのコメントが示唆するように、これはgsub
に適しています:
gsub("^.*_", "", string_thing)
以下の場合にもご注意ください。
string_thing <- c("I_AM_STRING", "I_AM_ALSO_STRING_THING", "AM I ONE", "STRING_")
gsub("^.*_", "", string_thing)
[1] "STRING" "THING" "AM I ONE" ""
list
をsapply
でループし、tail
で 'n'個の最後の要素を取得できます。
sapply(Split, tail, 1)
#[1] "STRING" "STRING"
文字列が1つしかない場合は、[[
は、list
をvector
に変換し、tail
を使用して最後の要素を取得します
tail(Split[[1]], 1)