全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
1489 1
2015-12-20
悬赏 50 个论坛币 已解决
附上我的dofile local AA *A #*A想表示的是所有含A的变量
local BB *B #*B想表示所有含B的变量
foreach A of local AA{
foreach B of local BB{
gen n=count if `A'==`B'
display “`A'” “`B'” if n>0.9*count#这里想表示A和B中相同的个数大于90%就输出AB的变量名
}
}
总而言之 我的目标就是 我有一份变量名末带A和带B的dta文件,我希望能够对A和B进行匹配,即输出变量名(也有可能不能匹配成功的)
这里有好多bug 但希望大神能理解我想要解决的问题
定有重谢~




最佳答案

夏目贵志 查看完整内容

你这个一开始的定义就有问题吧。你看 你这样是得不到包含A的变量名的。 另外,display是不可以和if一起用的 什么是gen n=count if `A'==`B'? count这个变量已经存在了吗?而且你的循环第二次进行的时候会有n已经存在的错误。 还是建议你从比较基本的命令学起。写循环之前先要能正确写出循环的每一个步骤。如果只对一对变量AB进行处理的命令你都写不正确的话,加上循环只会让事情越来越糟糕。学习要一步一步的来哦~ ...
二维码

扫码加我 拉你入群

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

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

全部回复
2015-12-20 17:29:43
你这个一开始的定义就有问题吧。你看
复制代码


你这样是得不到包含A的变量名的。

另外,display是不可以和if一起用的
复制代码


什么是gen n=count if `A'==`B'? count这个变量已经存在了吗?而且你的循环第二次进行的时候会有n已经存在的错误。

还是建议你从比较基本的命令学起。写循环之前先要能正确写出循环的每一个步骤。如果只对一对变量AB进行处理的命令你都写不正确的话,加上循环只会让事情越来越糟糕。学习要一步一步的来哦~
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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