从ISO datetime字符串生成Stata date变量
我的日期时间字符串如下所示:从ISO datetime字符串生成Stata date变量,stata,Stata,我的日期时间字符串如下所示: starttime = 2017-01-03T00:00:00.000000-05:00 我想从这个sting生成Stata datetime变量,但我有困难。这是我正在使用的代码: generate stataDate = clock(starttime, "YMD!THH:MM:SS") 你知道使用这根绳子的正确桅杆吗?我一直在查看文档,但找不到答案。以下内容可能会为您指出一个有用的方向 clear input str32 starttime "2017-0
starttime = 2017-01-03T00:00:00.000000-05:00
我想从这个sting生成Stata datetime变量,但我有困难。这是我正在使用的代码:
generate stataDate = clock(starttime, "YMD!THH:MM:SS")
你知道使用这根绳子的正确桅杆吗?我一直在查看文档,但找不到答案。以下内容可能会为您指出一个有用的方向
clear
input str32 starttime
"2017-01-03T00:00:00.000000-05:00"
"2017-01-03T12:34:56.654321-05:00"
end
generate double sd = clock(starttime,"YMD#hms##")
format sd %tcCCYY-NN-DD_HH:MM:SS.sss
产生
. list, clean
starttime sd
1. 2017-01-03T00:00:00.000000-05:00 2017-01-03 00:00:00.000
2. 2017-01-03T12:34:56.654321-05:00 2017-01-03 12:34:56.654
值得注意的是,Stata datetime值的精度限制为毫秒:这些是存储值的单位。同样重要的是,日期时间值必须存储为双数值,而不是浮点数,因为浮点数不能保持完全的准确性
Stata的日期和时间变量很复杂,有很多东西需要学习。如果您尚未阅读《Stata用户指南》PDF的第24章(使用日期和时间),请立即阅读。如果你有,是时候复习了。在这之后,help datetime
文档通常就足以指明方向。你不可能什么都记得;即使是最有经验的用户最终也会参考help datetime
文档或返回手册以了解详细信息。但至少你会很好地理解基础知识和基本原则。时间的投资将得到充分的回报