3547 6

[编程问题求助] stata怎么在一个变量取最大值时返回另一个变量的值 [推广有奖]

  • 3关注
  • 3粉丝

已卖:426份资源

博士生

20%

还不是VIP/贵宾

-

威望
0
论坛币
751 个
通用积分
10.9736
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
2472 点
帖子
110
精华
0
在线时间
338 小时
注册时间
2018-9-5
最后登录
2025-6-4

楼主
北方的北方有极光 发表于 2019-8-26 17:02:16 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
如图所示,后面的max_control是每一年year每一个省prov,contro_ratio中最大的值,请问各位有知道怎么用stata返回这个最大值对应的control这个变量的内容吗?比如说想要知道2000年prov=0这个省份max_control=0.8对应的control是0。这个怎么对应呢?有没有人知道代码应该怎么写呀?
二维码

扫码加我 拉你入群

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

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


1566809860(1).png (8.9 KB)

1566809860(1).png

回帖推荐

caozhaowen 发表于3楼  查看完整内容

g tag1=0 replace tag1=1 if prov==0 & year==2000 scalar max=. mata mata clear st_view(x=.,.,"max_control control","tag1") x i=. w=. maxindex(x[.,1],1,i,w) 最大值=x[.,2] st_numscalar("max",最大值) end

沙发
caozhaowen 在职认证  发表于 2019-8-28 12:28:33
vvv见下下

藤椅
caozhaowen 在职认证  发表于 2019-8-28 12:54:31
g tag1=0
replace tag1=1 if prov==0 & year==2000
scalar max=.
mata
mata clear
st_view(x=.,.,"max_control control","tag1")
x
i=.
w=.
maxindex(x[.,1],1,i,w)
最大值=x[.,2][i]
st_numscalar("max",最大值)
end
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
Sunknownay + 3 + 3 + 3 观点有启发

总评分: 学术水平 + 3  热心指数 + 3  信用等级 + 3   查看全部评分

板凳
A猫 发表于 2020-3-21 22:28:31
请问楼主这个问题解决了嘛?怎么解决的呢??谢谢!

报纸
北方的北方有极光 发表于 2020-4-14 20:46:23
A猫 发表于 2020-3-21 22:28
请问楼主这个问题解决了嘛?怎么解决的呢??谢谢!
我后面没有用到这个,不过我想了一下,可以按照year prov control_ratio排序,然后新生成一个变量x让它等于每年每个省的control ratio的最后一个值就可以了。你可以尝试一下这个思路,希望可以帮到你

地板
A猫 发表于 2020-4-22 11:27:57
北方的北方有极光 发表于 2020-4-14 20:46
我后面没有用到这个,不过我想了一下,可以按照year prov control_ratio排序,然后新生成一个变量x让它等 ...
已经解决啦!谢谢您!

7
cao红 发表于 2021-4-11 20:58:54
A猫 发表于 2020-4-22 11:27
已经解决啦!谢谢您!
您好,想请教一下这个问题是怎么解决的,也遇到了同样的困惑。谢谢!

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-2-8 01:40