Порядок контроля результата от прибл. () - PullRequest
0 голосов
/ 18 января 2020

И approx(c(-10, 0), c(-10, 0), n = 3), и approx(c(0, -10), c(0, -10), n = 3) дают один и тот же результат, но я чувствую, что второй должен возвращать точки от (0, 0) до (-10, -10) в этом порядке (т. Е. Наоборот того, что возвращается ).

Кто-нибудь знает обоснование переупорядочения этих результатов, и есть ли у кого-нибудь элегантный способ убедиться, что порядок соответствует входным аргументам?

Чтобы уточнить, я бы хотел approx(c(0, -10), c(0, -10), n = 3)$x дать результат 0 -5 -10, а не -10 -5 0, как на самом деле.

1 Ответ

1 голос
/ 18 января 2020

Не требуется, чтобы значения x были монотонными, поэтому approx необходимо их отсортировать. Если вы хотите сохранить значения в определенном порядке, используйте вместо этого approxfun и оцените его по точкам в следующем порядке:

x <- c(0, -10)
y <- c(0, -10)
approxfun(x,y)(seq(x[1], x[2], length.out = 3))
#> [1]   0  -5 -10
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...