Sto provando ad usare la funzione chron
is.holiday()
, ma ho problemi a far funzionare. La documentazione dice di modificare l'oggetto .Holiday
con le festività che si desidera utilizzare, ma le modifiche apportate a .Holiday
non sembrano essere rilevate da is.holiday()
. Qualcuno potrebbe fornire un esempio del modo appropriato per caricare le vacanze?Come definire le festività per is.holiday() pacchetto chron in R
7
A
risposta
9
Questo non è banale e probabilmente merita di essere riferito al manutentore chron
come un bug.
library(chron)
library(timeDate)
hlist <- c("CAVictoriaDay","CACanadaDay","CALabourDay")
(ss <- dates(sapply(sapply(hlist,holiday,year=2011),as.Date)))
.Holidays <- ss
(Qualcuno che in realtà lavora con date in R più spesso di me probabilmente ha una soluzione più elegante per la roba precedente, senza che doppio-sapply
cosa ...)
Ma questo doesn' t cambiare la cosa importante, che è la versione di Holidays
nel chron
namespace:
chron::.Holidays ## no change
l'indizio è qui: Override a function that is imported in a namespace
Namespace magia:
unlockBinding(".Holidays", as.environment("package:chron"))
assignInNamespace(".Holidays", .Holidays, ns="chron",
envir=as.environment("package:chron"))
assign(".Holidays", .Holidays, as.environment("package:chron"))
lockBinding(".Holidays", as.environment("package:chron"))
ora guarda, e ha funzionato:
chron::.Holidays
provarlo:
yrvec <- seq.Date(as.Date("2011-01-01"),
as.Date("2011-12-31"),by="day")
plot(is.holiday(yrvec),axes=FALSE)
axis.Date(side=1,yrvec)
0
stavo cercando di fare la stessa cosa e hanno trovato questo post più vecchio. Non ho bisogno di modificare .Holidays
:
library(timeDate);library(chron)
hlist <- c("USChristmasDay","USGoodFriday","USIndependenceDay","USLaborDay",
"USNewYearsDay","USThanksgivingDay")
myholidays <- dates(as.character(holiday(2000:2013,hlist)),format="Y-M-D")
> is.holiday(as.Date("2013-11-28"),myholidays)
[1] TRUE
> chron::.Holidays
New Years Day Memorial Day Independence Day Labor Day Thanksgiving Christmas
01/01/92 05/25/92 07/04/92 09/07/92 11/26/92 12/25/92
Problemi correlati
- 1. Come definire i tipi di argomento per le funzioni R?
- 2. Gestione affari/festività data
- 3. Come definire +/- accedere come.difftime in R?
- 4. Come definire le subroutine "statiche" in Perl?
- 5. Un pacchetto R per l'India?
- 6. Come ottenere le festività nazionali del paese selezionato
- 7. File di festività per i paesi G20
- 8. Come utilizzare le funzioni in un pacchetto R mascherato da un altro pacchetto?
- 9. Definire le importazioni predefinite a livello di pacchetto
- 10. È possibile definire la versione di un pacchetto in R install.packages?
- 11. FAKE: come definire le proprietà MSBuild?
- 12. Il pacchetto matrix più maturo per R?
- 13. R dipendenze del pacchetto
- 14. R: come definire più costruttori per una classe R6?
- 15. R definire le dimensioni del frame dati vuoto
- 16. Eclipse RCP: tutte le possibilità per definire le dipendenze?
- 17. Lavorare con centesimi di secondo utilizzando il pacchetto Chron o modificando la precisione
- 18. Mappa mondiale aggiornata per pacchetto "mappe" R?
- 19. Come definire le distribuzioni personalizzate in JAGS?
- 20. Leiningen: come definire le costanti in project.clj?
- 21. Come posso definire le variabili in LINQ?
- 22. Come definire le callback in Android?
- 23. R - Pacchetto Google Analytics
- 24. Downgrade versione R e pacchetto R Bioconductor
- 25. Come definire le proprietà condizionali in Maven?
- 26. In C# come definire le mie eccezioni?
- 27. Come si "prebuild" un indice vignette per un pacchetto R?
- 28. Tipo inutile giocoleria per definire Data.Void (pacchetto "void" su Hackage)?
- 29. Come definire una funzione a tratti in R
- 30. Esiste un comando in R per visualizzare tutte le funzioni presenti in un pacchetto?
Grazie. È stato molto più complicato di quanto mi aspettassi. –
La soluzione sopra riportata è fantastica e funziona, con l'eccezione che sembra esserci un errore se hlist include "GBNewYearsEve" Ho iniziato una nuova domanda su questo [collegamento] (http://stackoverflow.com/questions/ 26777282/a-con-TimeDate-r-package-i-ricevere-un-errore-quando-specifica-gbnewyearseve) – DaveRGP