Questo mi ha frustrato. Anche con lubridate
non riesco a ottenere le date per mantenere il loro tipo quando eseguo il loop su di esse. Per esempio:La data di scadenza in R perde il formato
require(lubridate)
yearrange = ymd(20110101) + years(seq(4))
yearrange
#[1] "2012-01-01 UTC" "2013-01-01 UTC" "2014-01-01 UTC" "2015-01-01 UTC"
class(yearrange)
#[1] "POSIXct" "POSIXt"
Tuttavia, se cerco di collegare attraverso anni (la creazione di un terreno separato per ogni anno nel mio set di dati): perdo la formattazione dell'anno, e avrebbe dovuto ri-lanciare la dati
for (yr in yearrange) { show(yr) }
#[1] 1325376000
#[1] 1356998400
#[1] 1388534400
#[1] 1420070400
Se io ciclo però specificando gli indici, ottengo la data oggetti posteriore:
for (i in seq(length(yearrange))) { show(yearrange[i]) }
#[1] "2012-01-01 UTC"
#[1] "2013-01-01 UTC"
#[1] "2014-01-01 UTC"
#[1] "2015-01-01 UTC"
c'è un modo semplice per evitare l'opti indicizzato acceso, senza usare foreach
, o è l'unico modo?
Grazie. Questo risolve il mio problema. Lo implementerò anche come funzione invece di un ciclo 'for', quindi probabilmente trarrò vantaggio anche dalla soluzione @thelatemail – beroe