楼主: 蠢猫猫
730 2

[编程问题求助] Stata如何求某变量下不同数值对应的占比并平方求和(有dataex示例代码) [推广有奖]

  • 2关注
  • 1粉丝

硕士生

51%

还不是VIP/贵宾

-

威望
0
论坛币
1 个
通用积分
20.3335
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1140 点
帖子
76
精华
0
在线时间
204 小时
注册时间
2019-1-18
最后登录
2023-12-18

楼主
蠢猫猫 发表于 2022-11-24 11:31:29 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
求助各位大神,我想要求type变量的下每个数值的占比再平方加总。具体需求是这样的,先按每家企业和每个年度划分,然后type变量下有不规律的字符串,我想要求每类字符串在所有字符串里的占比ratio。以Stkcd为1的举例,2021年有a、b两类type,a有2个,b有2个,一共4个样本,那么a类type的样本占比就是2/4,b类也是2/4;2020年有6个样本,其中a有2个,b有3个,c有1个,那么占比分别为2/6,3/6,1/6。最后我还想再平方加总一下,也就是(2/6)^2+(3/6)^2+(1/6)^2=14/36。请问该如何实现呢,示例代码如下:
  1. [CODE]
  2. * Example generated by -dataex-. To install: ssc install dataex
  3. clear
  4. input byte Stkcd int Year str1 type
  5. 1 2021 "a"
  6. 1 2021 "a"
  7. 1 2021 "b"
  8. 1 2021 "b"
  9. 1 2020 "a"
  10. 1 2020 "a"
  11. 1 2020 "b"
  12. 1 2020 "b"
  13. 1 2020 "b"
  14. 1 2020 "c"
  15. 2 2020 "e"
  16. 2 2020 "d"
  17. 2 2019 "f"
  18. 2 2019 "f"
  19. 2 2019 "g"
  20. 2 2019 "g"
  21. 2 2019 "a"
  22. end
复制代码
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input byte Stkcd int Year str1 type
  4. 1 2021 "a"
  5. 1 2021 "a"
  6. 1 2021 "b"
  7. 1 2021 "b"
  8. 1 2020 "a"
  9. 1 2020 "a"
  10. 1 2020 "b"
  11. 1 2020 "b"
  12. 1 2020 "b"
  13. 1 2020 "c"
  14. 2 2020 "e"
  15. 2 2020 "d"
  16. 2 2019 "f"
  17. 2 2019 "f"
  18. 2 2019 "g"
  19. 2 2019 "g"
  20. 2 2019 "a"
  21. end
复制代码
[/code]

其实来源是这篇文献一个指标的测度方法,但不知道如何实现。向各位大神求助!
二维码

扫码加我 拉你入群

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

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

关键词:Stata tata Data generated generate

举例.png (89.42 KB)

举例.png

沙发
蠢猫猫 发表于 2022-11-24 11:32:42
代码不小心发重复了,两个是一样的

藤椅
蓝色 发表于 2022-11-24 17:20:43
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input byte Stkcd int Year str1 type
  4. 1 2021 "a"
  5. 1 2021 "a"
  6. 1 2021 "b"
  7. 1 2021 "b"
  8. 1 2020 "a"
  9. 1 2020 "a"
  10. 1 2020 "b"
  11. 1 2020 "b"
  12. 1 2020 "b"
  13. 1 2020 "c"
  14. 2 2020 "e"
  15. 2 2020 "d"
  16. 2 2019 "f"
  17. 2 2019 "f"
  18. 2 2019 "g"
  19. 2 2019 "g"
  20. 2 2019 "a"
  21. end

  22. gen index=1
  23. collapse (count) numb=index,by(Stkcd Year type)

  24. bysort Stkcd Year: egen tnumb=total(numb)
  25. bysort Stkcd Year: egen tratio=total((numb/tnumb)^2)
  26. collapse (mean) tratio,by( Stkcd Year)
复制代码

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

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