楼主: 苏苏大大
2782 7

[数据管理求助] stata如何分组做排列组合呢?例如图上数据 [推广有奖]

  • 0关注
  • 0粉丝

大专生

65%

还不是VIP/贵宾

-

威望
0
论坛币
7 个
通用积分
6.9447
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
188 点
帖子
12
精华
0
在线时间
94 小时
注册时间
2020-10-22
最后登录
2022-7-8

楼主
苏苏大大 发表于 2022-1-7 13:36:21 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
idname
1001
a
1001 b
1001 c
1002 d
1002 e

变1是原始数据,我想根据id变量分组,求每组中name的排列组合的所有情况,并生成新变量,如第二张表所示的。

idname1name2
1001 a b
  1001 a c
  1001 b a
  1001 b c
  1001 c a
  1001 c b
1002 d e
1002 e d



二维码

扫码加我 拉你入群

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

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

关键词:Stata tata name 原始数据 变量分组

沙发
苏苏大大 发表于 2022-1-7 13:38:08
或者使用excel表格能实现吗

藤椅
KeplerLeeee 发表于 2022-8-8 16:41:32
求问,有解决吗

板凳
1920131002 发表于 2022-9-9 16:55:34
或许可以试下“joinby”这个合并命令。生成一个和图一内容相同的dta文件,但是要把第二列的变量name改下名称(name2),然后以图1的dta为master文件,执行 joinby id using "被合并文件".dta 应该可行,然后删掉name和name2相同的行就行了

报纸
1098311619 发表于 2023-9-23 08:20:18
同问,是否有解决办法呢

地板
黃河泉 在职认证  发表于 2023-9-23 09:31:36
请试试
  1. * Example generated by -dataex-. For more info, type help dataex
  2. clear
  3. input float id str2 name
  4. 1001 "a"
  5. 1001 "b"
  6. 1001 "c"
  7. 1002 "d"
  8. 1002 "e"
  9. end

  10. preserve
  11. ren name name2
  12. tempfile a
  13. save `a'
  14. restore

  15. joinby id using `a'
  16. drop if name == name2
复制代码

7
黃河泉 在职认证  发表于 2023-9-23 10:11:18
结果为
  1. * Example generated by -dataex-. For more info, type help dataex
  2. clear
  3. input float id str2(name name2)
  4. 1001 "a" "b"
  5. 1001 "a" "c"
  6. 1001 "b" "c"
  7. 1001 "b" "a"
  8. 1001 "c" "b"
  9. 1001 "c" "a"
  10. 1002 "d" "e"
  11. 1002 "e" "d"
  12. end
复制代码

8
xyyyyohohoh 发表于 2024-5-11 01:00:40
黃河泉 发表于 2023-9-23 09:31
请试试
请问同一张表格里,两列数据的配对应该怎么写呢

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

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