У меня есть тиббл (трек от {amt}; 84 000 x 13, включая POSIXct с форматом "гггг-мм-дд чч: мм: сс", см. Пример ниже), и я пытаюсь использовать summarize_sampling_rate
{amt}чтобы получить сводку данных каждого животного (ID) (см. второй пример ниже).
Из кода, который я имею ниже (спасибо MoveBank !!), я не могу понять, как указатьаргумент в map()
, который вызывает summarize_sampling_rate
, так что time_unit = “min”
.
Приведенный ниже код работает, но по умолчанию для summarize_sampling_rate
установлено значение time_unit = "auto"
, и некоторые идентификаторы возвращаются назад в минутах, а другие - в часах.Я могу справиться с этим вручную, но лучше сообщить об этом в этот бит кода:
data <-track %>% nest(-id) %>% mutate(sr = map(data, summarize_sampling_rate)) %>% select(id, sr) %>% unnest
Я предполагаю, что, поскольку map
указывает, чтодля карты (.x, .f) «если .f является функцией, она используется как есть» означает, что я не могу указать аргумент для summarize_sampling_rate
.
Спасибо - надеюсь, это не такСлишком непонятно :)
Пример ввода трека:
# A tibble: 83,861 x 13
id dir_abs dir_rel sl nsd_ x_ y_ t_ tod_ month year day hour
* <int> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dttm> <chr> <ord> <dbl> <int> <int>
1 35 231. NA 2143. 0 4.29e5 5.85e6 2003-12-18 12:01:00 night Dec 2003 18 12
2 35 242. 11.4 54.1 4594261. 4.30e5 5.85e6 2003-12-18 18:01:00 day Dec 2003 18 18
3 35 225. -17.7 6394. 4824468. 4.30e5 5.85e6 2003-12-19 00:00:00 night Dec 2003 19 0
Пример итоговой таблицы вывода из summarize_sampling_rate
(по умолчанию)
# A tibble: 28 x 10
id min q1 median mean q3 max sd n unit
<int> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <int> <chr>
1 35 0.967 1 1 2.66 6 20 2.78 1021 hour
2 37 0.967 1 1 3.07 5.98 42 3.98 1151 hour
3 43 0.967 1 2.02 4.78 6 60.0 6.20 723 hour
4 73 0.983 1 1.02 75.7 3 744. 217. 29 hour
5 89 0.95 1 1.02 3.51 5.98 36.0 4.53 1671 hour
6 97 0.333 0.5 1.98 2.18 2.02 134 3.77 2853 hour
7 123 0.45 0.5 1.98 1.89 2.02 20 1.60 3808 hour
8 141 0.45 0.517 2 1.86 2 80 1.82 4343 hour