Existe-t-il un moyen simple de renvoyer une liste de lignes manquantes dans un xts? Ci-dessous produit un xts et pour cet exemple il manque intentionnellement 2 lignes. Plus loin, lorsqu'on a la liste (de lignes manquantes), est-il possible de calculer le% de lignes manquantes (par exemple 2 lignes manquent où le total devrait être 100 lignes = 2% ou des lignes manquantes).xts - Retourne une liste de lignes manquantes et calcule% de lignes manquantes
# load dependent packages
library(xts)
# create a set of test data to be used
d <- as.POSIXct(c("2017/01/01 09:00:00", "2017/01/01 09:02:00",
"2017/01/01 09:02:00", "2017/01/01 09:05:00"))
o = c(98.00, 97.67, 98.00, 98.10) # for "open" data
h = c(99.71, 98.97, 99.71, 99.41) # for "high" data
l = c(96.81, 96.86, 96.81, 97.70) # for "low" data
c = c(97.67, 98.67, 97.67, 98.83) # for "close" data
v = c(1000, 22000, 1000, 50000) # for "volume" data
a = c(1000, 22000, 1000, 50000) # for "adjusted" data
# create a dataframe
mydf1 <- data.frame("date" = d, "open" = o, "high" = h, "low" = l,
"close" = c, "volume" = v, "adjusted" = a)
# create an xts based on dataframe mydf1
myxts1 <- xts(mydf1[,-1], order.by = mydf1$date)
Cela fonctionne vraiment bien avec les données xts ci-dessus. L'utilisation de données OHLC téléchargées réelles au format xts donne parfois cette erreur: Erreur dans seq.int (0, to0 - from, by): invalide '(à-partir de)/par' in 'seq'. Il semble que ce soit la partie de ligne "all_times": by = min (diff (temps (xts10)) – Toolbox
@Toolbox L'exemple doit ressembler le plus possible aux caractéristiques des données d'origine –
Pour une raison inconnue, la solution fonctionne jusqu'à 22 lignes xts, ayant 23 lignes xts produit l'erreur ci-dessus – Toolbox