2015-04-23 3 views
0

Фрейм данных:добавить дату в dataframe

head(HSC) 

     Date Y1  M1 Location Year Quarter Month 
2010-01-04 0.115 0.245 Chicago 2010  Q1 01 
2010-01-05 0.111 0.210 Chicago 2010  Q1 01 
2010-01-06 0.113 0.185 Chicago 2010  Q1 01 

Тогда я получаю ежемесячно в среднем на Y1 и M1

HSCnew<-aggregate(cbind(Y1,M1)~Month+Year,data=HSC,mean) 

Month Year  Y1  M1 
    01 2010 -0.11935294 -0.04017647 
    02 2010 -0.09776471 -0.05600000 
    03 2010 -0.06785714 0.01271429 
    04 2010 -0.07315789 -0.02457895 

И месяц и год символов. есть способ, чтобы добавить дату справа, например дата = 01-01-2010

+3

вы агрегировали его на уровне месяца - как ваша новая дата может иметь значение даты - возможны только месяц и год? В вашей первой строке результатов данные агрегируются в январе 2010 года, дата не имеет значения. – vagabond

+0

так как я могу добавить столбец в HSCnew, так что дата = 01/01/2010 ... 01/02/2010? – jkl

ответ

0

You можно добавить столбец Date как тип Date с этим:

HSCnew$Date <- as.Date(paste(HSCnew$Year, HSCnew$Month, '01', sep='/')) 

или просто

HSCnew$Date <- paste('01', HSCnew$Month, HSCnew$Year, sep='-') 

Если вы хотите строку в формате dd- мм-гггг.

0

Я не знаю, как день месяца актуален, но вы можете сделать это:

date <- paste(Year, Month, sep = "-") 

require(zoo) 
as.yearmon(date) 
[1] "Jan 2010" 
Смежные вопросы