私はRに新しく、新しいstackoverflowになっています。私はdata.tableを見つけようとしていて、 "R data.tableは別のdata.tableの値のインデックスを置き換える"ことを見て、私が理解したと思ったが、私が望むものを得ることはできないと思った。R data.table複数の列の値を置き換えます。
私は2つのデータフレームを持っています。最初のものは興味のあるデータで、2つ目は最初のデータフレームのIDを変換するための名前/ IDを含むキーです。 "key" data.tableを使用して、テーブル$ id1とテーブル$ id2の数値を "key" data.tableの "Names"に変換したいと考えています。ここで私はこれまで管理してきたものだ:
table<-data.table("Sample" = sample(40:46, 6), "Conc1" = sample(100:106,6),
"id1" = as.character(sample(1:6, 6)), "Conc2" = sample(200:206,6),
"id2" = as.character(sample(1:6, 6)))
key<-data.table("Name" = c("Sally", "John", "Roger", "Bob", "Kelsey", "Molly"),
"id1" = as.character(1:6))
setkey(table, id1)
setkey(key, id1)
table[key, `:=`(id1 = i.Name)]
私は(テーブルの$ ID1で名前の値を置換)ここまで得ているだけでなく、列名を変更することなく、ID2を変更する方法を見つけ出すことはできません、リセットキーとid2のための上記の同じ手順を再実行します。実際のデータセットでは、複数のSally、Johnなどが存在し、同じキーを使用してコードが両方の列を「翻訳」したいと考えています。
コードを狙っているのは、(学習目的のために)data.tableを使用していますが、これをさらに改善する別のパッケージがあれば、それも素晴らしいでしょう。ありがとう!