387 1

[编程问题求助] reshape和foreach连用易错点 [推广有奖]

  • 1关注
  • 0粉丝

本科生

16%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
15.5748
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
846 点
帖子
61
精华
0
在线时间
46 小时
注册时间
2022-10-8
最后登录
2024-4-17

楼主
努力学习stata~ 发表于 2023-6-13 21:06:50 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
如图,为何两者连用一直显示仍存在与关键变量不一致的变量,但去掉foreach之后就可以执行成功?

二维码

扫码加我 拉你入群

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

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

关键词:reshape foreach Reach Shape RES

reshape.png (73.92 KB)

reshape.png

沙发
DΘstinyじò 发表于 2023-6-14 21:48:26 来自手机
努力学习stata~ 发表于 2023-6-13 21:06
如图,为何两者连用一直显示仍存在与关键变量不一致的变量,但去掉foreach之后就可以执行成功?
用foreach 的时候,每次进入循环的只有局部暂元var的一个变量v,进行reshape命令转换 wide数据时,其余变量在同一个i下,值不同,就会有一致性问题。(reshap wide v,i j 分步来看,对于v来说,宽数据转换,会按照j的类别生成多个和v相关的变量名,v变量名本身消失;对于其余变量来说,变量名还会存在,若同一个i,值相同,也是可以对应的,整个转换顺利进行,若值是不同的,产生不一致性)<br>
去掉foreach单独reshape 你后面接的也是暂元var,而不是单独一个变量v,reshape wide var, i j 此时全部处理变量都进行宽数据转换,能够对应上,命令正常运行。

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

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