Stata 如何将长日期转换为年?
我已将Excel文件导入Stata,其中包含一个字符串变量,日期格式为月/日/年,如下所示:Stata 如何将长日期转换为年?,stata,Stata,我已将Excel文件导入Stata,其中包含一个字符串变量,日期格式为月/日/年,如下所示: +--------------------------+ | country Election | |--------------------------| 1. | New Zealand 11/29/1969 | 2. | New Zealand 11/25/1972 | 3. | New Zealand 11/27/1999 |
+--------------------------+
| country Election |
|--------------------------|
1. | New Zealand 11/29/1969 |
2. | New Zealand 11/25/1972 |
3. | New Zealand 11/27/1999 |
4. | New Zealand 11/25/1972 |
5. | New Zealand 09/17/2005 |
+--------------------------+
我的意图是转换日期,以便只显示年份
我已经使用
genyear=date(Election,“MDY”)
创建了一个浮动类型的新日期变量。然而,我不知道如何进行。我怎样才能把这些日期转换成年呢?你有答案,但我们会详细说明,以方便其他感兴趣的人
您的变量year
命名错误,因为它是每日日期变量。我建议使用函数daily()
而不是date()
来强调正在发生的事情。这是不同伪装下的相同代码。然后需要yofd()
进行转换
clear
input str11 (country Election)
"New Zealand" "11/29/1969"
"New Zealand" "11/25/1972"
"New Zealand" "11/27/1999"
"New Zealand" "11/25/1972"
"New Zealand" "09/17/2005"
end
gen dailydate = daily(Election, "MDY")
format dailydate %td
gen yeardate = yofd(dailydate)
list
+-------------------------------------------------+
| country Election dailydate yeardate |
|-------------------------------------------------|
1. | New Zealand 11/29/1969 29nov1969 1969 |
2. | New Zealand 11/25/1972 25nov1972 1972 |
3. | New Zealand 11/27/1999 27nov1999 1999 |
4. | New Zealand 11/25/1972 25nov1972 1972 |
5. | New Zealand 09/17/2005 17sep2005 2005 |
+-------------------------------------------------+
你有答案,但我们会为其他感兴趣的人详细说明 您的变量
year
命名错误,因为它是每日日期变量。我建议使用函数daily()
而不是date()
来强调正在发生的事情。这是不同伪装下的相同代码。然后需要yofd()
进行转换
clear
input str11 (country Election)
"New Zealand" "11/29/1969"
"New Zealand" "11/25/1972"
"New Zealand" "11/27/1999"
"New Zealand" "11/25/1972"
"New Zealand" "09/17/2005"
end
gen dailydate = daily(Election, "MDY")
format dailydate %td
gen yeardate = yofd(dailydate)
list
+-------------------------------------------------+
| country Election dailydate yeardate |
|-------------------------------------------------|
1. | New Zealand 11/29/1969 29nov1969 1969 |
2. | New Zealand 11/25/1972 25nov1972 1972 |
3. | New Zealand 11/27/1999 27nov1999 1999 |
4. | New Zealand 11/25/1972 25nov1972 1972 |
5. | New Zealand 09/17/2005 17sep2005 2005 |
+-------------------------------------------------+
查看
help datetime
特别是“SIF到SIF转换”部分,这是您想要做的-从“日期”转换为“年度”。我建议您生成一个新变量,而不是替换现有变量。谢谢!我签出它并运行命令:generate Year_only=yofd(Year)。它工作得很好。请查看帮助datetime
特别是“SIF到SIF转换”部分,这是您想要做的-从“日期”转换为“年度”。我建议您生成一个新变量,而不是替换现有变量。谢谢!我签出它并运行命令:generate Year_only=yofd(Year)。它工作得很好。