アルファベット[a-z]、スペース[]、アポストロフィ[']を含む文字列変数があります。 x <- "a'b c"
アポストロフィ[']を空白[]に置き換え、空白[]をアンダースコア[_]に置き換えます。複数の文字列をRの1つのgsub()またはchartr()ステートメントに置き換えます。
x <- gsub("'", "", x)
x <- gsub(" ", "_", x)
これは絶対に動作しますが、状態が多いとコードが醜くなります。したがって、chartr()
を使用しますが、chartr()
は空白を扱うことはできません。
x <- chartr("' ", "_", x)
#Error in chartr("' ", "_", "a'b c") : 'old' is longer than 'new'
この問題を解決する方法はありますか?ありがとう!
あなたはすでに2つのgsubで解決しました。それがあまりにも醜いと思われる場合は、あなたが "可愛い"と思う独自のラッパー関数を作成することができます。しかし、 "空白"は文字ではないので、 'chartr'を使うことはできません。それは文字の欠如です。 – MrFlick