Разница дней между двумя датами в одном столбце в R

Вам не нужно входить в функцию, я никогда не смогу заставить ее работать таким образом. При этом он отлично работает. Также используется mouseover , потому что hover запускается, когда вы покидаете цель.

$('option').mouseover(function(e) {
    var $target = $(e.target);
    if($target.is('option')) {
        console.log('yeah!');
    };
})​

Попробуйте, чтобы он работал. Изменили его для консоли, чтобы вы не получили спам с предупреждениями. http://jsfiddle.net/HMDqb/

-2
задан markus 17 January 2019 в 11:51
поделиться

1 ответ

Я не уверен, что это самый красивый способ, и кто-то, вероятно, предложит более чистое решение, но это должно сработать (часть решения, найденного в: , вычитает значение из предыдущего ряда группой )

Прежде всего, я импортирую ваши данные:

df <- structure(list(card_id = c("C_ID_4e6213e9bc", "C_ID_4e6213e9bc", "C_ID_4e6213e9bB", "C_ID_4e6213e9B", 
                                  "C_ID_4e6213e9bD", "C_ID_4e6213e9bD" ), 
                      purchase_date = structure(c(1498404787, 1500120645, 1502316269, 1504346786, 1489108459, 1519461905), 
                                                tzone = "UTC", class = c("POSIXct", "POSIXt"))), 
                 .Names = c("card_id", "purchase_date"), class = c("data.table", "data.frame"), 
                 row.names = c(NA, -6L))

И затем он работает, когда я запускаю:

df <- df %>%
  group_by(card_id) %>%
  arrange(purchase_date) %>%
  mutate(diff = purchase_date - lag(purchase_date, default = first(purchase_date))) %>%
  mutate(diff = round(diff/86400, digits = 2))

упорядочить позволяет вам быть уверенным, что вы вычитаете то, что хотите вычесть, тогда функция лаг позволяет вам выбрать предыдущую строку, и, наконец, деление возвращает количество потраченных дней.

Я надеюсь, что это поможет вам =)

0
ответ дан Emmanuel D 17 January 2019 в 11:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: