以下は私の質問がどこから来ているのか理解したい場合のデータセットに関する背景情報です(私は実際にデータセットをマージしたいので、もっと効率的な方法を知っているかもしれません)。Rの複数の変数名の最後の文字のみを置き換える方法は?
質問: Rの変数名の最後の文字だけを何も(複数の変数の場合)置き換える方法はありますか?
sub()関数を使用しようとしましたが、うまくいきましたが、いくつかの変数名には複数回変更する文字(str2tt2など)が含まれています。私は空のスペースで最後の '2'を取り除くか置き換えたいだけです。
例: 私はこれらの変数名とデータセットを持っている、と私は唯一の最後の '_2' 文字を削除したいと、私はこれを試してみました:
h_2ello_2 how_2 are_2 you_2
1 1 3 5 7
2 2 4 6 8
names(data) <- sub('_2', '', names(data))
出力:
hello_2 how are you
1 1 3 5 7
2 2 4 6 8
今度は、最後の '_2'を削除して、hello_2の代わりに 'h_2ello'を返すようにします。
どのように知っていますか? ありがとうございます!
背景情報:
私は現在、3個の別々のものからデータセットを構築しようとしています。これらの3つの異なるものは、3つの異なる測定モーメントからのものであり、したがって、それらの変数名は、それぞれの変数名の後の文字を測定モーメントに対応させて含む。すなわち、測定瞬間2では、変数名はscoreA2、scoreB2、scoreC2、測定瞬間3では変数名はscoreA3、scoreB3、scoreC3である。
これらのファイルを結合したいので、私はデータセットで '2'と '3'を削除してから、マージしてみんなが同じ瞬間に測定されたように見せます。
ただし、スコア名には文字2と3も含まれています。例えば:str2tt2はStroopカード2の合計時間測定の瞬間2の変数名です。私は最後の '2'を削除したいだけですが、sub()関数を使うときは最初のものだけを削除します。それはsub
あるとして私たちは、元のデータセットの列名OPのコードで
names(data) <- sub('_2$', '', names(data))
names(data)
#[1] "h_2ello" "how" "are" "you"
上の文字列の終わりを示唆メタ文字$
を使用する必要が