找出两个日期之间的差异

use*_*100 3 stata

我有两个约会,30-04-200912-01-2009.

是否可以计算月份差异?

我尝试了以下但它不起作用:

generate date3 = date1 - date2
Run Code Online (Sandbox Code Playgroud)

Pea*_*cer 7

通过numeric使用该date()函数减去两个日期变量,您可以得到天数的差异.为了获得数月的差异,您需要使用该功能执行SIF到SIF的转换mofd().

例如:

display mofd(date("30-04-2009", "DMY")) - mofd(date("12-01-2009", "DMY"))
Run Code Online (Sandbox Code Playgroud)

在你的情况下:

clear
set obs 1

generate date1 = date("30-04-2009", "DMY")
generate date2 = date("12-01-2009", "DMY")
generate date3 = mofd(date1) - mofd(date2)

list

   +-----------------------+
   | date1   date2   date3 |
   |-----------------------|
1. | 18017   17909       3 |
   +-----------------------+
Run Code Online (Sandbox Code Playgroud)