У меня есть датафрейм ниже:
library lubridate
eventtime<-c("2020-02-07 22:06:00","2020-02-07 22:00:00","2020-02-07 21:46:00")
eventvalue<-c("home","work",'exit')
geof<-data.frame(eventtime,eventvalue)
Затем я использую список для их хранения и присваиваю элементы списка различным data.frames, используя:
library(lubridate)
library(tidyverse)
list1 <- geof %>%
split(.$eventvalue) %>%
bind_rows() %>%
mutate(EventHour = hour(eventtime)) %>%
split(.$eventvalue)
for (i in names(list1)) setNames(assign(i, data.frame(list1[[i]])), names(list1))
Я бы хотел затем использовать table()
на основе EventHour для каждого кадра данных, чтобы создавать новые кадры данных с частотой каждого EventHour
, а затем переименовывать эти столбцы
#table the events by count of hours
tablegeh<-data.frame(table(home$EventHour))
colnames(tablegeh)<-c("Hour","Frequency")