Quello che state vedendo non è davvero il momento, ma un tempo trascorso. Esistono tipi di dati per il tempo trascorso. Nella base R, la classe difftime
fa questo.
tms <- c("2:06:00", "3:34:30", "4:12:59", "08:09:10",
"09:10:11", "10:11:12", "11:12:13")
ta <- as.difftime(tms)
che mostra come
> ta
Time differences in hours
[1] 2.100000 3.575000 4.216389 8.152778 9.169722 10.186667 11.203611
attr(,"tzone")
[1] ""
> format(ta)
[1] " 2.100000 hours" " 3.575000 hours" " 4.216389 hours" " 8.152778 hours" " 9.169722 hours"
[6] "10.186667 hours" "11.203611 hours"
Si può fare matematica con questo così convertendo a numerico.
> 42.2/as.numeric(ta)
[1] 20.095238 11.804196 10.008564 5.176150 4.602102 4.142670 3.766643
Il pacchetto lubridate
ha anche tipi che si occupano di tempo trascorso, in particolare duration
.
library("lubridate")
ti <- as.duration(as.difftime(tms))
che mostra come
> ti
[1] 7560s (~2.1 hours) 12870s (~3.58 hours) 15179s (~4.22 hours) 29350s (~8.15 hours)
[5] 33011s (~9.17 hours) 36672s (~10.19 hours) 40333s (~11.2 hours)
e si può fare la matematica con è dopo la conversione a numerico (qui, secondi invece di ore)
> 42.2/as.numeric(ti)
[1] 0.005582011 0.003278943 0.002780157 0.001437819 0.001278362 0.001150742 0.001046290
fonte
2013-01-23 19:31:36
convertirlo in secondi o più piccolo. La rappresentazione con ore e minuti è in realtà solo per la presentazione. –
Potresti trovare utile il pacchetto 'lubridate' quando lavori con le date. C'è un PDF che descrive il pacchetto chiamato "Date and Times Made Easy with lubridate" pubblicato nel Journal of Statistical Software. Una rapida ricerca aumenterà. – rrs