Пример данных
df <- structure(list(Date = structure(c(15706, 15707, 15708, 15709,
15712, 15713, 15714, 15715, 15716, 15719), class = "Date"), MidPrs_JPY = c(NA,
NA, NA, 0.00102, 0.00102, 0.00102, 0.00102, 0.00102, 0.00102,
NA), BID_EUR = c(NA, 1e-04, 1e-04, 1e-04, 1e-04, 1e-04, 1e-04,
2e-04, 2e-04, 2e-04), ASK_EUR = c(NA, -2e-04, -3e-04, -7e-04,
-3e-04, -4e-04, -4e-04, -7e-04, -5e-04, -5e-04), BID_GBP = c(NA,
0.0048, 0.0048, 0.0048, 0.0048, 0.0048, 0.0048, 0.0048, 0.0048,
0.0048), ASK_GBP = c(NA, 0.0042, 0.0042, 0.0042, 0.0042, 0.0042,
0.0042, 0.0042, 0.0042, 0.0042), BID_USD = c(0.0034, 0.0034,
0.0034, 0.0034, 0.0034, 0.0034, 0.0034, 0.0034, 0.0034, 0.0034
), ASK_USD = c(0.003, 0.003, 0.003, 0.003, 0.003, 0.003, 0.003,
0.003, 0.003, 0.003)), row.names = c(NA, 10L), class = "data.frame")
namesV <- c("EUR", "GBP", "USD")
Вопрос
При игре с eval(parse(...))
во время написания цикла я заметил, что это не таквозможность назначить оператору, полученному в результате eval(parse(...))
.Это не имеет смысла для меня, поскольку с помощью этого метода можно вызывать столбец, но, очевидно, нельзя назначать новые значения.
Что я имею в виду, не имея возможности назначить, но вызывая:
eval(parse(text = paste0("RepoCal$BID_", namesV[1])))
Позволяет мне вызывать столбец, однако:
eval(parse(text = paste0("Repomid$MidPrs_", namesV[1]))) <- eval(parse(text = paste0("Repomid$MidPrs_", namesV[2])))
приводит к ошибке:
цель назначения расширяется до неязыкового объекта
Я благодарен за любые советы, которые помогут мне понять основную проблему или даже решить ее, спасибо!