Question

J'ai ces données dans un fichier CSV:

Date  ALICORC1 ALT   ATACOBC1 AUSTRAC1 CONTINC1 BVN   DNT
40886 5.8      0.1   0.9      0.28     5.45     38.2  1.11
40889 5.8      0.1   0.88     0.28     5.37     37.7  1.04
40890 5.8      0.09  0.87     0.27     5.33     37.4  0.99
40891 5.7      0.1   0.85     0.27     5.3      37.5  0.91

Ce sont des cours de clôture des actions de la Bourse du Pérou, et je veux les convertir en XTS afin que je puisse trouver le portefeuille optimal et d'autres choses, mais je ne peux pas trouver le moyen de convertir ce fichier CSV à XTS. J'ai vérifié la réponse à plusieurs des questions ici, mais aucun d'entre eux travaillaient.

Certaines des erreurs que j'ai sont:

  • Index a des entrées de mauvaises XXXX à des lignes de données
  • données Ambigu.

Aide Quelqu'un peut-il me?

Était-ce utile?

La solution

csv signifie virgule -Séparé valeurs de sorte que la mise en page montre la question n'est pas csv. Nous partons du principe que les données sont vraiment sous forme csv et non sous la forme présentée à la question. Si elle est vraiment sous la forme indiquée dans la question plutôt que csv puis omettre l'argument sep="," dans read.zoo ci-dessous. De plus, s'il y a d'autres écarts, vous devrez peut-être modifier les autres arguments. Voir ?read.zoo et la lecture de données dans la vignette du zoo dans le package zoo .

Ici, nous utilisons read.zoo dans le package zoo pour lire les données comme un objet zoo, z, puis nous le convertissons en XTS, x.

Voir R Nouvelles 4/1 qui traite de la date spécifiquement la manipulation des dates Excel noter que nous devrons peut-être modifier le code ci-dessous légèrement si la version Mac d'Excel est utilisé (comme il est décrit dans la référence).

library(xts) # this also loads zoo which has read.zoo

toDate <- function(x) as.Date(x, origin = "1899-12-30")
z <- read.zoo("myfile.csv", header = TRUE, sep = ",", FUN = toDate)
x <- as.xts(z)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top