2011-04-06 3 views
0

J'essaie d'utiliser le paquetage R timeSeries pour lire les fichiers csv.Représentation POSIX des dates

C'est le code que je suis en train de courir:

prices <- readSeries(file='A2006-2011.csv',head=T,sep=",",format="%m/%d/%Y") 

Cependant, il ne reconnaît pas la date dans le csv (ci-dessous sont les premières lignes de celui-ci)

Date Open High Low Close Volume Adj.Close 
4/4/2011 45.07 45.41 44.36 44.83 2133900 44.83 
4/1/2011 44.88 45.48 44.78 45.14 2212300 45.14 
3/31/2011 44.92 45.02 44.46 44.78 2194900 44.78 
3/30/2011 44.79 45.17 44.65 45.09 2514100 45.09 

et il imprime l'avertissement suivant:

Warning message: 
In readSeries(file = "A2006-2011.csv", head = T, sep = ",", format = "%m/%d/%Y") : 
    Conversion of timestamps to timeDate objects produced only NAs. 
    Are you sure you provided the proper format with argument 'format' 
    or in the header of your file ? 

Je l'apprécierais vraiment si quelqu'un peut me aider à ce sujet.

+3

Est-il correct que vous utilisiez une virgule comme séparateur de champs même s'il ne semble pas y avoir de virgules dans votre fichier? – rlibby

Répondre

1

Pour être honnête, je voudrais juste lire la table avec le Date comme chaînes, puis faire une conversion rapide. Par exemple,

> x = c("4/4/2011", "4/4/2011", "3/31/2011", "3/30/2011") 
## In your case you would have prices$Date = as.Date(prices$Date, ... 
> as.Date(x, "%m/%d/%Y") 
[1] "2011-04-04" "2011-04-04" "2011-03-31" "2011-03-30" 
+1

+1 Oui, exactement – Andrie

+2

Grâce à vous, je l'ai compris. Même si les dates dans le fichier semblent être "" 04/04/2011 ", quand vous le lisez dans R ils deviennent" 2011-04-04 ". Donc si quelqu'un encouters le même problème avec les fichiers de données csv téléchargés à partir de Yahoo, la bonne façon de saisir la date du format est format = "% Y-% m-% d". – Alex

0

Essayez ce package: speedR at https://r-forge.r-project.org/projects/speedr. C'est un importateur de données visuelles et supporte les classes Date et POSIXct. Vous pouvez également l'utiliser pour filtrer visuellement les objets R existants à partir de l'espace de travail.