时空维度发掘(一)之 lubridate
概述时刻与空间是天下运行的首要维度,各行各业的运作都受到这两个维度的影响。个中,时刻这个维度自己固然只必要一列timestamp即可存储全部信息,不外通过进一步的时刻维度发掘,我们可以从中找到很多纪律来富厚特性工程。乃至在许多场景下,途经其他维度收罗坚苦的环境下,仅仅通过时代序列也也许实现较为精准的猜测使命,由此可见时刻维度对数据说明的重要性。R说话在时空数据发掘方面已经有很多经典案例,好比CRAN上的TimeSeries主页、时刻序列说明与R说话,本文将一路重温,怎样通过 时刻发掘要害R包处理赏罚时刻序列的要害R包有 凡是,我们在数据库中会存储一些日记数据的时刻戳,他们以形如 通过时代戳,我们每每还必要发掘出更细粒度的特性,好近年代日,上午、下战书、晚上,季度、礼拜、是否闰年、是否节沐日(法定或促销)等等。 操作 con <- RMySQL::dbConnect(RMySQL::MySQL(),user="root",password="FinanceR",dbname="quota",host="localhost") con %>% dbSendStatement("SET NAMES UTF8") # fetch data raw_data <- con %>% dbSendQuery(" select code,price,create_time from quota.price ") %>%dbFetch(-1) # feature engineering data <- raw_data %>% mutate(ymd = lubridate::ymd_hms(create_time) %>% lubridate::ymd_hms()) %>% mutate(am = lubridate::ymd_hms(create_time) %>% lubridate::am() %>% ifelse(0,1)) %>% mutate(wday = lubridate::ymd_hms(create_time) %>% lubridate::wday()) %>% mutate(month = lubridate::ymd_hms(create_time) %>% lubridate::month()) %>% mutate(quarter = lubridate::ymd_hms(create_time) %>% lubridate::quarter()) %>% mutate(leap_year = lubridate::ymd_hms(create_time) %>% lubridate::leap_year() %>% ifelse(0,1)) %>% mutate(time_5_min = lubridate::ceiling_date(create_time,'5 mins') ) %>% mutate(night = night(create_time)) %>% mutate(holiday = is_holiday(create_time)) # data viz data %>% select(-create_time) %>% GGally::ggcorr( nbreaks = 10) %>% plotly::ggplotly() 参考资料
(编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |