全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
877 2
2022-12-02
有一个csv格式数据,想要分批量导入进stata保存很多个dta格式的数据。已知可以使用如下命令来导入a-b行。

import delimited  "data.csv", clear rowrange(a:b)

但这样需要手动写很多条命令,且很可能中途出错
如何把以下有规律的数字用循环来替代,而不用手动去写?即 rowrange(a:b)中的a、b是否可以在循环里用符号替代?
import delimited  "data.csv", clear rowr(1:10)
import delimited  "data.csv", clear rowr(11:20)
import delimited  "data.csv", clear rowr(21:30)
...我尝试写了
forvalues i = 10(10)30 {
scalar n = `i' - 10+1
import delimited  "try.csv", clear rowr(`n':`i')  
save v`i'.dta, replace
}
但是scalar n起不到作用,每个都是跑出来的行数是从第一行到第 i 行

谢谢!
二维码

扫码加我 拉你入群

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

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

全部回复
2022-12-2 19:48:31
将 scalar 改为 local 试一下。
二维码

扫码加我 拉你入群

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

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

2022-12-2 20:53:41
Stakiny 发表于 2022-12-2 19:48
将 scalar 改为 local 试一下。
可以了!感谢帮助!谢谢您!
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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