我有一份跟进日期列表,以下列表格提供:年 - 月 - 日。 为了能够根据这些日期对我的数据进行聚类,我想将日期转换为几小时。这是第一天排队0,第二天24,第三天48等等。
这可能是什么代码?
答案 0 :(得分:1)
dates<-c('2016-09-01', '2016-09-01', '2016-09-01', '2016-09-02', '2016-09-02', '2016-09-03', '2016-09-03', '2016-09-04', '2016-09-05', '2016-09-05', '2016-09-05', '2016-09-05', '2016-09-06', '2016-09-07')
将上述日期作为字符串,将其转换为Date
:
dates<-as.Date(dates,format = '%Y-%m-%d')
dates
# [1] "2016-09-01" "2016-09-01" "2016-09-01" "2016-09-02" "2016-09-02" "2016-09-03" "2016-09-03" "2016-09-04" "2016-09-05"
#[10] "2016-09-05" "2016-09-05" "2016-09-05" "2016-09-06" "2016-09-07"
然后,只需从最小/第一个日期中减去:
hrs<-as.numeric(dates-min(dates))*24
hrs
# [1] 0 0 0 24 24 48 48 72 96 96 96 96 120 144
或第一次约会:
hrs<-as.numeric(dates-dates[1])*24
hrs
# [1] 0 0 0 24 24 48 48 72 96 96 96 96 120 144