全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
2059 5
2016-05-04
我的数据以000002.xls、000003.xls、000004.xls、000006.xls(中间正好缺失000005.xls),我想批量导入,所以,使用如下命令
forvalues i=2/6{
import excel using "C:\stata\00000`i'.xls" ,firstrow clear
save t`i',replace
}
但是,由于正好缺失000005.xls这个表格,所以,命令就无法继续执行。
所以,就像请教高手指点一下,如何写个命令,当000005.xls缺失时,就忽略,继续针对000006.xls执行。
还请高手不吝赐教。
谢谢。

P.S.我能想到的解决方案是,当STATA提示出现错误时,就修改forvalues i=***的数值。但是,由于我需要导入的文件太多并且有的文件是600001.xls到600999.xls都存在,但是,601000.xls到601999.xls缺失,而602000.xls到699999.xls又存在,所以,逐次修改forvalues的值会很麻烦,所以,想请教高手,有没有简洁的方法。

谢谢。


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-5-4 16:32:46
有一个解决方法是使用if-then语句,当00000·i'.xls存在时,那么就import。但是,如何写命令来说明00000`i'.xls存在。还请高手指点。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-5-5 09:38:53
forvalues i=2/4 6{
    import excel using "C:\stata\00000`i'.xls" ,firstrow clear
    save t`i',replace
}
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-5-5 09:39:34
或(不够好)
forvalues i=2/6{
    cap import excel using "C:\stata\00000`i'.xls" ,firstrow clear
    cap save t`i',replace
}
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-5-5 09:51:45
arlionn 发表于 2016-5-5 09:39
或(不够好)
forvalues i=2/6{
    cap import excel using "C:\stata\00000`i'.xls" ,firstrow clear
谢谢连老师指点。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-5-5 10:41:22
arlionn 发表于 2016-5-5 09:39
或(不够好)
forvalues i=2/6{
    cap import excel using "C:\stata\00000`i'.xls" ,firstrow clear
连老师,再请教你一个问题。
我在导入数据时由于手工操作失误,导致code(证券代码)输入错误。即:
真实的数据为:
code        year        asset
000001    2001        231
000001    2002        234
000001    2003        222
000002    2001       111
000002    2002       100
000002    2003        99
结果在导入数据时将code=000001的数据全部赋予了code=000002,即
code        year        asset
000001    2001        231
000001    2002        234
000001    2003        222
000002    2001        231
000002    2002        234
000002    2003        222
我的问题是如何挑出这些除了code不同外 ,year和asset全部相同的两组或多组数据。这样就可以重新更正数据了。



P.S.造成上述问题的原因是,将code=000001的数据下载下来后保存为000001.xls。由于操作失误,然后重复下载了code=000001的数据,但是,却保存为了000002.xls。而数据集中的code是根据“000002.xls”的文件名生成的。所以,就导致出现code不同,但是,year和asset相同的情况。
现在,为了确保数据真实准确,所以,我需要挑出code不同,而year和asset全部相同的数据,重新核对和更正。

请连老师指点指点。谢谢。

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群