Правильная процедура для изменения назначенной переменной - PullRequest
0 голосов
/ 25 октября 2018

Добрый вечер.У меня есть код, который требует создания новых имен переменных.В настоящее время я использую функцию присвоения.После того, как я создаю новую желаемую структуру данных, у меня возникают трудности с ее изменением после этого.Я много раз читал, что хранение имен переменных в списках - идеальный процесс, но у меня возникли проблемы с его получением.

Этот код просто пытается добавить столбец года к объекту NewVar xts.

Большая область будет проходить через несколько лет, и 2018 будет в конечном итоге заменен на i.

Спасибо!

xts1 <- xts(x=1:10, order.by=Sys.Date()-1:10)
xts2 <- xts(x=21:30, order.by=Sys.Date()-1:10)

NewName = "NewVar"

assign(NewName, xts1 - xts2)
assign(NewName$year, 2018) # this is the code that fails logically...

РЕДАКТИРОВАТЬ:

Желаемый результат заключается в том, чтобы у объекта NewVar XTS, временного ряда из 10 значений, был дополнительный столбец, отображающий 2018 для каждого значения.

Да, я могу просто сказать, что NewVar $ year <- 2018. НоМне нужно получить доступ к назначенному имени переменной в глобальной среде (NewVar), не вводя его подробно.Есть ли способ получить доступ к объекту XTS NewVar с помощью NewName, а затем изменить его?Мой метод находит вектор, а не только что созданный XTS.СПАСИБО!</p>

1 Ответ

0 голосов
/ 25 октября 2018

Почему бы не использовать NewName ["year"] = 2018 напрямую?

Правка: ОК, не совсем уверен, что понял.Посмотрите, работает ли это для вас.

xts1 <- xts(x=1:10, order.by=Sys.Date()-1:10)
xts2 <- xts(x=21:30, order.by=Sys.Date()-1:10)

NewName = "NewVar"    

assign(NewName, xts(cbind(N=xts1 - xts2, year=2018)))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...