Я использую пакет sets
в R
, чтобы попытаться создать закрытый интервал с верхней границей, равной единице, и нижней границей, которая довольно близка к единице. Проблема в том, что я получаю странное поведение для интервала. При вызове он отображается как одноэлементный набор, содержащий только нижнюю границу, но когда я запрашиваю минимальные или максимальные значения в интервале, он дает мне правильные значения. Когда я смотрю на структуру интервала, он показывает обе границы как одну.
library(sets);
options(digits = 15);
#Set lower bound and interval
L <- 0.999999999989428;
INT <- sets::interval(l = L, r = 1, bounds = 'closed')
#Print interval and show details
INT;
{0.999999999989428}
min(INT);
[1] 0.999999999989428
max(INT)
[1] 1
str(INT);
List of 1
$ :List of 4
..$ l : num 1
..$ r : num 1
..$ lc: logi TRUE
..$ rc: logi TRUE
- attr(*, "domain")= chr "R"
Я хотел бы иметь возможность построить интервалы такого рода с нижними границами, близкими к единице. Мне нужно, чтобы они печатались правильно, так как закрытый интервал показывает правильную нижнюю и верхнюю границы. Хотя это и не супер важно, в идеале мне бы хотелось, чтобы структурный вызов показывал правильные границы.
Вопрос: Есть ли какой-нибудь способ убедиться, что интервал будет напечатан и покажет свою структуру справильные границы? Если нет, это проблема с пакетом sets
, или это более глубокое ограничение на числа, близкие к единице в R
?