Дата выпуска в R

У меня есть некоторые данные, например:

Date        CAC Index
2014-10-10  4073,71
2014-10-17  4033,18
2014-10-24  4128,9

Но когда я помещаю его в R с библиотекой XLConnect, я получаю следующее:

wb<-loadWorkbook(file.choose())

lp<-getSheets(wb)
data=lapply(seq_along(lp),function(i) readWorksheet(wb,sheet=lp[i],startRow=1))[[1]]
data[,1]=as.character(data[,1])

tail(data,3)[,c(1,4)]
                   Date CAC.Index
719 2014-10-09 22:00:00   4073.71
720 2014-10-16 22:00:00   4033.18
721 2014-10-23 22:00:00   4128.90

Почему у меня не совпадают даты? Например: я не получаю 2014-10-24, вместо этого я получаю 2014-10-23 22:00:00

Может проблема с

ttz<-Sys.getenv('TZ')
Sys.setenv(TZ='GMT')

? С наилучшими пожеланиями


person user1665355    schedule 31.10.2014    source источник
comment
Вы где-то использовали as.POSIXct? Может быть, этот ответ полезен?   -  person talat    schedule 31.10.2014
comment
@beginneR Привет, нет, я не использовал as.POSIXct.   -  person user1665355    schedule 31.10.2014
comment
Вы меняете переменную среды часового пояса? Вы делаете это до или после импорта данных? Какой у вас часовой пояс?   -  person jlhoward    schedule 31.10.2014


Ответы (2)


Я думаю, что это происходит из-за импорта данных в формате GMT ​​и преобразования их в ваш местный часовой пояс, который кажется GMT-2, поэтому 2014/10/10 00:00 устанавливается на 2014/10/09 22:00.

Возможно, вы могли бы решить эту проблему, указав свой tz в соответствии со списком OlsonNames() или указав, что ваш столбец даты равен Date вместо POSIXct.

person dudu    schedule 29.12.2016

Похоже, он преобразовал строку даты в Excel в объект даты в R. Попробуйте str(data), чтобы увидеть, какие типы находятся в вашем data.frame (хорошая привычка, чтобы попасть)

Если это объект Date, вы можете использовать формат, чтобы поместить его так, как вы хотели бы его прочитать. Что-то типа:

##assuming data$Date is a Date class object
data$DateFormatted <- format(data$Date, format="%Y-%m-%d")

См. ?format для других примеров.

person MarkeD    schedule 31.10.2014