#r #date
#r #Дата
Вопрос:
У меня два свидания:
> x
[1] "2019-12-06 01:32:30 UTC"
> y
[1] "2019-12-06 01:32:49 UTC"
Я хотел бы вычислить экспоненциальную величину их разницы:
exp(x-y)
Но я получил следующую ошибку
Error in Math.difftime(df$RootTime[1] - df$Time[1]) :
'exp' not defined for "difftime" objects
Комментарии:
1. Вам нужно преобразовать x и y в числовые значения или напрямую преобразовать в числовые их разницу. Попробуйте использовать exp(as.numeric(x)-as.numeric(y))
2. Приведите его к числовому:
exp(as.numeric(difftime(x, y, units="secs")))
Ответ №1:
Вы можете применить его к numeric
и использовать units
в difftime
:
exp(as.numeric(difftime(x, y, units="secs")))
#[1] 5.602796e-09
Данные:
x <- as.POSIXct("2019-12-06 01:32:30 UTC")
y <- as.POSIXct("2019-12-06 01:32:49 UTC")
Ответ №2:
Преобразуйте его в числовой, прежде чем использовать exp
exp(as.numeric(x - y, units = "secs"))
Лучше всего указывать единицы измерения, так как в противном случае это будет автоматически. Варианты для единиц измерения следующие units = c("auto", "secs", "mins", "hours", "days", "weeks")
difftime
Явный вызов необязателен; -
операторы вызывают его.
Ответ №3:
exp(as.numeric(difftime(x, y)))
# Data:
x <- as.POSIXct("2019-12-06 01:32:30", tz = "UTC")
y <- as.POSIXct("2019-12-06 01:32:49", tz = "UTC")