Durante la lettura di un file, la funzione read.table
utilizza type.convert
per distinguere tra colonne logiche, integer, numeriche, complesse o fattoriali e memorizzarle di conseguenza.rileva automaticamente le colonne della data durante la lettura di un file in un data.frame
Vorrei aggiungere date al mix, in modo che le colonne contenenti date possano essere automaticamente riconosciute e analizzate negli oggetti Date
. Dovrebbero essere riconosciuti solo alcuni formati di data, ad es.
date.formats <- c("%m/%d/%Y", "%Y/%m/%d")
Ecco un esempio:
fh <- textConnection(
"num char date-format1 date-format2 not-all-dates not-same-formats
10 a 1/1/2013 2013/01/01 2013/01/01 1/1/2013
20 b 2/1/2013 2013/02/01 a 2013/02/01
30 c 3/1/2013 NA b 3/1/2013"
)
E l'uscita di
dat <- my.read.table(fh, header = TRUE, stringsAsFactors = FALSE,
date.formats = date.formats)
sapply(dat, class)
darebbe:
num => numeric
char => character
date-format1 => Date
date-format2 => Date
not-all-dates => character
not-same-formats => character # not a typo: date format must be consistent
Prima di andare e implementare da zero, è qualcosa di simile già disponibile in un pacchetto? O forse qualcuno ha già dato un crack (o volontà) ed è disposto a condividere il suo codice qui? Grazie.
Relativi a [Specifica formato di data per la discussione in colClasses read.table/read.csv] (http://stackoverflow.com/q/13022299/271616). –
Correlati, sì, e possono essere utili alle persone che fanno ricerche su questo argomento. Nel mio caso, però, ho bisogno che le colonne della data vengano rilevate automaticamente. – flodel
di "stesso formato" è l'ordine "formato esatto" o "ymd" che è importante (ad esempio, "2013/01/01" e "2013-01-01" nella stessa colonna vanno bene?) – mnel