2013-07-20 3 views
-3

У меня есть данные в следующем формате 200101, и я хочу, чтобы быть в следующем формате 2001-01 или 2001/01Формат даты лет-месяцев в R

Благодаря

+0

Вы получаете вниз голоса, потому что вы не показываете нам, что вы пробовали до сих пор и где именно вы застряли , Есть ссылки на возможные решения, возникающие при вводе вопроса! – vaettchen

+0

Мне нужно задать другой вопрос, но я не могу, так как люди оценили мои вопросы как -ve – mms

+0

как я могу увеличить свой тариф, чтобы задавать вопросы? – mms

ответ

3

Я не занимаюсь с датами, поэтому могут быть лучшие подходы. Ваша проблема в том, что у вас нет дня. Я знаю, что пакет zoo может справиться с этим, но не в том формате, который вам нужен. Я также предлагаю подход с регулярным выражением, но это не класс даты, просто символ.

Как дата:

library(zoo) 
as.yearmon("200101", "%Y%m") 

## > as.yearmon("200101", "%Y%m") 
## [1] "Jan 2001" 

Как символ:

gsub("([0-9]{4})","\\1-", "200101") 

## > gsub("([0-9]{4})","\\1-", "200101") 
## [1] "2001-01" 

## gsub("([0-9]{4})","\\1/", "200101") 
+0

Теперь я хочу построить данные, чтобы получить 2001-01 и так далее. Я пробовал PCP <- ts (pcp, frequency = 12, start = 2001) plot (PCP) , но это дает только годы. Спасибо – mms

+1

У меня новый вопрос, чтобы решить эту проблему. Скопируйте этот ответ на этот вопрос, и если на этот вопрос будет дан ответ, вы можете пометить его как таковой и предоставить там немного больше данных, чтобы он был [воспроизводимым] (http://stackoverflow.com/questions/5963269/how-to-make -a-пра-р-воспроизводимый-пример). –

+0

Большое спасибо за ваш ответ, это действительно помогло :) – mms

Смежные вопросы