R: La creazione dell'oggetto XTS cambia il formato dell'ora
Domanda
> str(s)
POSIXct[1:6630], format: "2011-02-14 09:31:00" "2011-02-14 09:32:00" "2011-02-14 09:33:00" "2011-02-14 09:34:00" ...
> head(s)
[1] "2011-02-14 09:31:00 EST" "2011-02-14 09:32:00 EST" "2011-02-14 09:33:00 EST" "2011-02-14 09:34:00 EST"
[5] "2011-02-14 09:35:00 EST" "2011-02-14 09:36:00 EST"
>
> head(AMKR)
date_holding time_holding close
1 2011-02-14 09:31:00 7.66
2 2011-02-14 09:32:00 7.58
3 2011-02-14 09:33:00 7.54
4 2011-02-14 09:34:00 7.54
5 2011-02-14 09:35:00 7.56
6 2011-02-14 09:36:00 7.54
> as.xts(AMKR[,-1:-2], s) -> newAMKR
> head(newAMKR)
[,1]
2011-02-14 00:00:00 7.74
2011-02-14 00:01:00 7.74
2011-02-14 00:02:00 7.74
2011-02-14 00:03:00 7.74
2011-02-14 00:04:00 7.74
2011-02-14 00:05:00 7.73
.
Come puoi vedere il tempo è cambiato.
Il ticker 'AMKR' viene estratto da MySQL DB situato sulla stessa macchina.
Se qualcuno può indicarmi nella giusta direzione che sarebbe molto apprezzata.
================================================
Aggiornamento: c'erano un paio di problemi.
1) Il caricamento dei dati in mysql è stato fatto con il formato del tempo impostato su% h:% I:% s quando avrebbe dovuto essere impostato su% h:% i:% s (nota il capitale h).
2) Ho cancellato i dati in mysql e re-caricato con recupero utilizzando h .Ora ottengo un tempo delle 12:00:00 per un preventivo che si verifica alle 12:00 ma appare AS.XTS interpreta questo come 12am e quindi tutte le citazioni che si verificano tra le 12:00:00 e le 04:00 sono interpretate in AM .
Mi chiedo perché MySQL non ha convertito il tempo per il formato di clock 24 ore in cui ho usato % h nella query di dati di caricamento.Mi chiedo se c'è un modo per forzare il cambiamento in r via As.posixct.Indagando .....
Soluzione
Ho capito il problema.Ho bisogno di caricare i dati in mysql utilizzando il formato temporale seguente: '% h:% i:% s% p'.In precedenza ho lasciato fuori il% p.Anche quando si utilizza% P devi usare minuscole% h.