У меня есть большой data.frame символьных данных, которые я хочу преобразовать на основе того, что обычно называют словарем на других языках.
В настоящее время я собираюсь сделать это так:
foo <- data.frame(snp1 = c("AA", "AG", "AA", "AA"), snp2 = c("AA", "AT", "AG", "AA"), snp3 = c(NA, "GG", "GG", "GC"), stringsAsFactors=FALSE)
foo <- replace(foo, foo == "AA", "0101")
foo <- replace(foo, foo == "AC", "0102")
foo <- replace(foo, foo == "AG", "0103")
Это прекрасно работает, но, очевидно, не очень красиво и кажется глупым повторять оператор replace
каждый раз, когда я хочу заменить один элемент в data.frame.
Есть ли лучший способ сделать это, поскольку у меня есть словарь приблизительно 25 пар ключ/значение?