Olá,


Eu uso sempre o pacote lubridate para calcular datas https://cran.r-project.org/web/packages/lubridate/index.html


Vale a pena conferir melhor as funções.


Abraços

Paulo Henrique Schau Guerra
Universidade Federal do Rio de Janeiro / Federal University of Rio de Janeiro
Diretoria de Relações Internacionais / International Affairs Office
Seção de Acordos Acadêmicos Internacionais / International Academic Agreements Section

Av. Pedro Calmon, 550 – 2.º andar – Prédio da Reitoria -- UFRJ Cidade Universitária – Ilha do Fundão – Rio de Janeiro – RJ
CEP.: 21941-901 - Tel.: +55 21 3938-1733
Em 22/12/2016 15:31, Karina Rebuli via R-br escreveu:

Olá, Leonard.

Sei duas formas de fazer isso.

=====
* Com os funções-base do R:
sapply( sapply( as.Date( c("2011-01-17", "2009-11-21") ), seq, Sys.Date(), by = "month" ), length )

Importante ressaltar que desssa forma se o dia das datas a serem comparadasfor maior que o dia da data atual, ele vai retornar um mês a mais (pois a seq() vai começar com a data passada e isso já é um retorno a ser contabilizado na length().

====
* Com funções do lubridate (acho o pacote excelente e uso bastante, é de autoria do Hadley):
sapply( c("2011-01-17", "2009-11-21"), function(day0){
  p <- as.period( interval( ymd( day0 ), Sys.Date() ) )
  year(p)*12 + month(p)
})

Dessa forma não precisa se preocupar com o dia inicial e você ainda pode acrescentar o day(p)/30 ao retorno se quiser a fração do resultado em meses.

Abs,
Karina



On Thu, Dec 22, 2016 at 3:03 PM Leonard Mendonça de Assis via R-br <r-br@listas.c3sl.ufpr.br> wrote:

Boa tarde

 

Imagine o seguinte cmr:

 

as.Date(c("2011-01-17", "2009-11-21"))-Sys.Date()

Time differences in days

[1] -2166 -2588


>

Como eu conseguiria obter este resultado, não em dias, mas em meses?

 

Leonard

_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.


_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forne�a c�digo m�nimo reproduz�vel.