全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
3510 3
2017-09-03
各位学友,我想生成一个变量,最终想要的变量是这样
x
1
2
3
.
.
.
261
1
2
3
.
.
.
261
...
循环出现1-261,一共要出现49017次。
我尝试两种方法均失败:
方法一:
set obs 261
gen x=_n
expand 49071
失败的原因:后面复制的1-261出现了分类排序,即出现的结果是这样:
1
1
1
1
1
...
2
2
2
....
3
3
3
...
261
261
261
.....
然后,需要进行排序,我又不会,按照1-261进行循环排序。

失败方法二:
set obs 261
gen x=_n

  • forv i=1/49017 {
  • gen var`i'=x
  • }
  • stack var*,into(newvar)


失败的原因:这种循环是通过生成新的变量,然后将横向变量转化为纵向。问题是:49017超过了横向新变量生成个数的限制。所以,不行。
请问各位学友,是否有办法解决我的问题,请不吝赐教!
谢谢!


二维码

扫码加我 拉你入群

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

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

全部回复
2017-9-3 17:25:45
帮你到美国 Stata 问了一下,得到回应为(两个方法):
复制代码
二维码

扫码加我 拉你入群

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

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

2017-9-3 20:59:14
黃河泉 发表于 2017-9-3 17:25
帮你到美国 Stata 问了一下,得到回应为(两个方法):
多谢回复,尝试了,方法正确。
谢谢!
二维码

扫码加我 拉你入群

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

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

2017-9-4 03:14:55
黃河泉 发表于 2017-9-3 17:25
帮你到美国 Stata 问了一下,得到回应为(两个方法):
我以前一直是用第一种方法的。没想到居然还有第二种方法。感谢分享!
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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