Я работаю с интервальными объектами в пакете sets
в R
(документация здесь ). Эти объекты представляются в виде списков, но у меня возникают проблемы при манипулировании их элементами. Вот пример интервала, его структура и класс. Созданный объект имеет класс "interval"
, и структура показывает, что это тип списка, содержащий граничные точки интервала, логические значения для его закрытия на границах и атрибут, указывающий, что это интервал действительных чисел.
#Create and print an interval
INTERVAL <- sets::interval(l = 3, r = 9, bounds = 'closed');
INTERVAL;
[3, 9]
#Show class
class(INTERVAL);
[1] "interval"
#Show structure
str(INTERVAL);
List of 1
$ :List of 4
..$ l : num 3
..$ r : num 9
..$ lc: logi TRUE
..$ rc: logi TRUE
- attr(*, "domain")= chr "R"
#Extract boundary values
min(INTERVAL);
[1] 3
max(INTERVAL);
[1] 9
В настоящее время я могу извлечь граничные значения, используя вышеупомянутые команды, но я не могу переназначить их, когда они уже созданы. Я пытался ссылаться на значения из списка. Можно использовать операции над множествами из пакета sets
для объединения или пересечения множеств, поэтому я мог бы сделать это таким образом, но я хочу иметь возможность напрямую изменять объект без выполнения операции над множеством.
Мой вопрос: Как мне ссылаться на граничное значение из объекта INTERVAL
выше? Какой самый простой способ заменить одну из ее границ другим значением?