【发布时间】:2016-02-26 08:33:46
【问题描述】:
我的 Stata 文件中有以下字符串格式的时间戳。如何将其转换为时间格式?
数据采用 HH:MM:SS 格式,后面附加一个“.000000”。
TIME
21:17:47.000000
17:30:14.000000
10:09:44.000000
09:24:32.000000
15:17:41.000000
【问题讨论】:
-
你尝试了什么代码?没有可见的研究工作。
我的 Stata 文件中有以下字符串格式的时间戳。如何将其转换为时间格式?
数据采用 HH:MM:SS 格式,后面附加一个“.000000”。
TIME
21:17:47.000000
17:30:14.000000
10:09:44.000000
09:24:32.000000
15:17:41.000000
【问题讨论】:
这里对标准代码的唯一扭曲是明显需要忽略隐含的微秒精度。此处的代码以仅使用精确秒数的字面意思举例。如果您确实具有毫秒精度,请使用字符串中的更多字符。
. clear
. input str15 stime
stime
1. "21:17:47.000000"
2. "17:30:14.000000"
3. "10:09:44.000000"
4. "09:24:32.000000"
5. "15:17:41.000000"
6. end
. gen double ntime = clock(substr(stime, 1, 8), "hms")
. format ntime %tcHH:MM:ss
. list
+----------------------------+
| stime ntime |
|----------------------------|
1. | 21:17:47.000000 21:17:47 |
2. | 17:30:14.000000 17:30:14 |
3. | 10:09:44.000000 10:09:44 |
4. | 09:24:32.000000 09:24:32 |
5. | 15:17:41.000000 15:17:41 |
+----------------------------+
【讨论】: