从 Stata 中的日期变量中提取季度

extract quarter from date variable in Stata

我正在尝试从以下示例中看起来像 dat 的日期变量中提取季度:

clear all

input str20 str
    "12Jan1998"
    "29Dec2000"
end

gen dat = date(str, "DMY")
format dat %tdDD-NN-CCYY

我正在尝试使用 quarter() 函数,例如:

gen quart = quarter(dofq(dat))

我得到的显然是错误的。你能提出解决这个问题的方法吗? 根据例子,我最后想得到的是1和4。

help quarter 文档告诉我们它接受参数“%td 日期”,因此您通过给它一个从该参数转换为“ %tq 日期”。所以

gen quart = quarter(dat)

会为所欲为。

构建每日约会时,您只需要 quarter()。我在这里使用 daily() 而不是 date()。它的功能相同,但名称更具体。

. clear all

. input str9 str

           str
  1. "12Jan1998"
  2. "29Dec2000"
  3. end

. gen date = daily(str, "DMY")

. format date %tdDD-NN-CCYY

. gen quarter = quarter(date) 

. list  

     +----------------------------------+
     |       str         date   quarter |
     |----------------------------------|
  1. | 12Jan1998   12-01-1998         1 |
  2. | 29Dec2000   29-12-2000         4 |
     +----------------------------------+