Ich bin neu in R und neu in stackoverflow. Ich versuche, data.table herauszufinden und schaute "R data.table, das einen Index der Werte von einer anderen data.table ersetzt" und dachte, dass ich verstanden habe, aber kann nicht erhalten, was ich will.R data.table ersetze Werte in mehreren Spalten
Ich habe zwei Datenrahmen - der erste ist die Daten, die ich interessiert, und der zweite ist ein Schlüssel mit Namen/IDs, um die IDs im ersten Datenrahmen zu übersetzen. Ich möchte die "key" data.table verwenden, um die Zahlen in der Tabelle $ id1 und der Tabelle $ id2 in die "Names" in der "key" data.table umzuwandeln. Hier ist, was ich bisher geschafft:
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)]
ich so weit gekommen sind (substituierte Werte für Namen in der Tabelle $ id1), kann aber nicht herausfinden, wie auch ID2 ändern, ohne die Spaltennamen zu ändern, Zurücksetzen die Schlüssel und wiederholen den gleichen Schritt oben für ID2. Im realen Datensatz wird es mehrere Sallys, Johns usw. geben und ich möchte, dass der Code beide Spalten mit demselben Schlüssel "übersetzt".
Ich hoffe, der Code verwendet data.table (für Lernzwecke), aber wenn es ein anderes Paket gibt, das das besser macht, wäre das auch großartig. Vielen Dank!