楼主: zhaoyuanlc
5652 17

50论坛币求救 如何把日期时间改为float格式 [推广有奖]

11
蓝色 发表于 2012-11-15 01:06:39
. import excel "D:\temp\data1990.xls", sheet("MYAGM2USM052S") firstrow  clear

. list Time in 1/10

     +-----------+
     |      Time |
     |-----------|
  1. | 01jan1990 |
  2. | 01feb1990 |
  3. | 01mar1990 |
  4. | 01apr1990 |
  5. | 01may1990 |
     |-----------|
  6. | 01jun1990 |
  7. | 01jul1990 |
  8. | 01aug1990 |
  9. | 01sep1990 |
10. | 01oct1990 |
     +-----------+

.
. gen time=mofd(Time)

. list in 1/10

     +---------------------------------------------------------------------------------+
     |      Time     cnus      cnm1     usm2    cnipi       usipi    cni    usi   time |
     |---------------------------------------------------------------------------------|
  1. | 01jan1990   4.7339   5655.65   3172.6     1278   2217.4084   2.88   8.17    360 |
  2. | 01feb1990   4.7339   5661.44   3172.7   1277.4   2254.9762   2.88   8.19    361 |
  3. | 01mar1990   4.7339   5746.54   3194.6   1595.2   2271.9268   2.88    8.3    362 |
  4. | 01apr1990   4.7339   5782.38   3221.7   1645.5    2259.473   2.88   8.32    363 |
  5. | 01may1990   4.7339   5805.02   3188.4     1690   2265.5741   2.88   8.25    364 |
     |---------------------------------------------------------------------------------|
  6. | 01jun1990   4.7339   5920.52   3212.4   1751.3   2282.6358   2.88    8.2    365 |
  7. | 01jul1990   4.7339   6028.46     3226     1542   2277.1965   2.88   8.09    366 |
  8. | 01aug1990   4.7339   6073.84   3240.1   1561.6   2278.0474   2.16   7.98    367 |
  9. | 01sep1990   4.7342   6327.76   3250.4   1649.7   2293.6072   2.16   8.08    368 |
10. | 01oct1990   4.7339    6433.8     3255   1687.8   2262.0187   2.16   8.03    369 |
     +---------------------------------------------------------------------------------+

. format %tm time

. list time in 1/10

     +---------+
     |    time |
     |---------|
  1. |  1990m1 |
  2. |  1990m2 |
  3. |  1990m3 |
  4. |  1990m4 |
  5. |  1990m5 |
     |---------|
  6. |  1990m6 |
  7. |  1990m7 |
  8. |  1990m8 |
  9. |  1990m9 |
10. | 1990m10 |
     +---------+

.
. recast float time,force

. list in 1/10

     +------------------------------------------------------------------------------------+
     |      Time     cnus      cnm1     usm2    cnipi       usipi    cni    usi      time |
     |------------------------------------------------------------------------------------|
  1. | 01jan1990   4.7339   5655.65   3172.6     1278   2217.4084   2.88   8.17    1990m1 |
  2. | 01feb1990   4.7339   5661.44   3172.7   1277.4   2254.9762   2.88   8.19    1990m2 |
  3. | 01mar1990   4.7339   5746.54   3194.6   1595.2   2271.9268   2.88    8.3    1990m3 |
  4. | 01apr1990   4.7339   5782.38   3221.7   1645.5    2259.473   2.88   8.32    1990m4 |
  5. | 01may1990   4.7339   5805.02   3188.4     1690   2265.5741   2.88   8.25    1990m5 |
     |------------------------------------------------------------------------------------|
  6. | 01jun1990   4.7339   5920.52   3212.4   1751.3   2282.6358   2.88    8.2    1990m6 |
  7. | 01jul1990   4.7339   6028.46     3226     1542   2277.1965   2.88   8.09    1990m7 |
  8. | 01aug1990   4.7339   6073.84   3240.1   1561.6   2278.0474   2.16   7.98    1990m8 |
  9. | 01sep1990   4.7342   6327.76   3250.4   1649.7   2293.6072   2.16   8.08    1990m9 |
10. | 01oct1990   4.7339    6433.8     3255   1687.8   2262.0187   2.16   8.03   1990m10 |
     +------------------------------------------------------------------------------------+

.
. recast float Time,force

. list in 1/10

     +------------------------------------------------------------------------------------+
     |      Time     cnus      cnm1     usm2    cnipi       usipi    cni    usi      time |
     |------------------------------------------------------------------------------------|
  1. | 01jan1990   4.7339   5655.65   3172.6     1278   2217.4084   2.88   8.17    1990m1 |
  2. | 01feb1990   4.7339   5661.44   3172.7   1277.4   2254.9762   2.88   8.19    1990m2 |
  3. | 01mar1990   4.7339   5746.54   3194.6   1595.2   2271.9268   2.88    8.3    1990m3 |
  4. | 01apr1990   4.7339   5782.38   3221.7   1645.5    2259.473   2.88   8.32    1990m4 |
  5. | 01may1990   4.7339   5805.02   3188.4     1690   2265.5741   2.88   8.25    1990m5 |
     |------------------------------------------------------------------------------------|
  6. | 01jun1990   4.7339   5920.52   3212.4   1751.3   2282.6358   2.88    8.2    1990m6 |
  7. | 01jul1990   4.7339   6028.46     3226     1542   2277.1965   2.88   8.09    1990m7 |
  8. | 01aug1990   4.7339   6073.84   3240.1   1561.6   2278.0474   2.16   7.98    1990m8 |
  9. | 01sep1990   4.7342   6327.76   3250.4   1649.7   2293.6072   2.16   8.08    1990m9 |
10. | 01oct1990   4.7339    6433.8     3255   1687.8   2262.0187   2.16   8.03   1990m10 |
     +------------------------------------------------------------------------------------+

.
. des

Contains data
  obs:           269                          
vars:             9                          
size:        17,216                          
---------------------------------------------------------------------------------------------------------------
              storage  display     value
variable name   type   format      label      variable label
---------------------------------------------------------------------------------------------------------------
Time            float  %td                    Time
cnus            double %10.0g                 cn/us
cnm1            double %10.0g                 cn m1
usm2            double %10.0g                 us m2
cnipi           double %10.0g                 cn ipi
usipi           double %10.0g                 us ipi
cni             double %10.0g                 cn i
usi             double %10.0g                 us i
time            float  %tm                    
---------------------------------------------------------------------------------------------------------------
Sorted by:  
     Note:  dataset has changed since last saved

12
pcjoshua 在职认证  发表于 2012-11-15 09:40:14
zhaoyuanlc 发表于 2012-11-14 21:01
抱歉,是这样,用你的data可以,但是我按你的命令还是不行,你能否帮我保存成txt或者cvs,然后告诉我该怎 ...
你直接把我给你的data转换为csv格式的就可以啦。用stata transfer软件。
还有命令写的很清楚了,我就不知道,我还要怎么弄?

13
zhaoyuanlc 发表于 2012-11-16 22:54:08
蓝色 发表于 2012-11-15 01:06
. import excel "D:\temp\data1990.xls", sheet("MYAGM2USM052S") firstrow  clear

. list Time in 1/10 ...
. rename time Time

. list Time in 1/10

     +------------+
     |       Time |
     |------------|
  1. | 01/01/1990 |
  2. | 01/02/1990 |
  3. | 01/03/1990 |
  4. | 01/04/1990 |
  5. | 01/05/1990 |
     |------------|
  6. | 01/06/1990 |
  7. | 01/07/1990 |
  8. | 01/08/1990 |
  9. | 01/09/1990 |
10. | 01/10/1990 |
     +------------+

. gen time=mofd(Time)
一到这里就报错了
type mismatch
r(109);

14
zhaoyuanlc 发表于 2012-11-16 22:54:42
pcjoshua 发表于 2012-11-15 09:40
你直接把我给你的data转换为csv格式的就可以啦。用stata transfer软件。
还有命令写的很清楚了,我就不知 ...
. rename time Time

. list Time in 1/10

     +------------+
     |       Time |
     |------------|
  1. | 01/01/1990 |
  2. | 01/02/1990 |
  3. | 01/03/1990 |
  4. | 01/04/1990 |
  5. | 01/05/1990 |
     |------------|
  6. | 01/06/1990 |
  7. | 01/07/1990 |
  8. | 01/08/1990 |
  9. | 01/09/1990 |
10. | 01/10/1990 |
     +------------+

. gen time=mofd(Time)
一到这里就报错了
type mismatch
r(109);

15
蓝色 发表于 2012-11-17 01:38:53
你从开始执行我的命令啊。

你自己调入的数据根本不知道数据的类型
我那是直接从excel中导入
不能list看数据
的des看数据类型
不同的函数要求不一样,所以我才列出所有的过程

你数据调用是自己的
程序用我后办部分,很容易出错

16
zhaoyuanlc 发表于 2012-11-17 01:52:12
蓝色 发表于 2012-11-17 01:38
你从开始执行我的命令啊。

你自己调入的数据根本不知道数据的类型
我用你命令的“import”显示的是未知的程序。。。

17
蓝色 发表于 2012-11-17 07:27:17
我那是stata12的命令。

你给的是excel格式数据,可以直接调用啊。


如果是csv格式的数据:
insheet using "D:\temp\data1990.csv",  clear
gen time_YM=mofd(date(time,"DMY"))
format %tm time_YM
list time time_YM in 1/10
des

18
zhaoyuanlc 发表于 2012-11-17 13:05:47
蓝色 发表于 2012-11-17 07:27
我那是stata12的命令。

你给的是excel格式数据,可以直接调用啊。
无限感激!

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-10 08:51