Я играю с некоторыми астрономическими данными и сталкиваюсь со странным поведением, когда пытаюсь передать определенные значения в signif
.
Например, в контексте аппроксимации окружности Земли signif(6400 * 2 * pi, 2)
дает 40000
(правильный ответ), тогда как 6400 * 2 * pi %>% signif(2)
дает 39680
:
library(dplyr)
rad_earth_km <- 6400
n_digits <- 2
# Option 1 (gives the correct answer)
circ_earth_1 <- signif(rad_earth_km * 2 * pi, n_digits) # Yields 40000
# Option 2 (gives the wrong answer)
circ_earth_2 <- rad_earth_km * 2 * pi %>% signif(2) # Yields 39680
Обращаясь к вопросу о том, действительно ли здесь подходит трубопровод, я хотел бы понять, почему эти два метода дают разные результаты в этих и подобных случаях. Я довольно часто использую трубопроводы в своей более технической работе, поэтому это немного беспокоит меня.