楼主: ishtar48
1166 4

[数据管理求助] stata不同行列间的重复值应该怎么剔除并合并 [推广有奖]

  • 0关注
  • 0粉丝

大专生

46%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0.3000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
56 点
帖子
5
精华
0
在线时间
104 小时
注册时间
2020-3-27
最后登录
2024-1-23

楼主
ishtar48 发表于 2022-2-5 22:11:33 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
stata小白想问问,在处理数据的时候,发现同一对象同一年度事件会重复记录,不仅不同行会重复,同一行的列间也会重复,请问有没有什么stata处理的好办法呀?
比如:
stkcd  year  var1  var2  var3
  1     2009    A      B
  1     2009    A      A      C
想合并为下面没有重复值的一行:
stkcd  year  var1  var2  var3
  1     2009    A      B      C


我原本想先用reshape转置成long形式再剔除行间重复值的,但是有重复值好像用不了reshape,会提示id不唯一。也想过用collapse,但是事件是字符,好像也不能用。

非常感谢

二维码

扫码加我 拉你入群

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

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

关键词:Stata tata 重复值 Collapse reshape Stata stata数据处理 stata重复值 数据处理

沙发
wdlbcj 学生认证  发表于 2022-2-6 16:39:51
这里可以给出一些示例的数据

因为看到VAR2 两个观测值是不一样的,所以不清楚具体的原因 可能不能删除重复值

藤椅
ishtar48 发表于 2022-2-6 22:04:06
wdlbcj 发表于 2022-2-6 16:39
这里可以给出一些示例的数据

因为看到VAR2 两个观测值是不一样的,所以不清楚具体的原因 可能不能删除重 ...
谢谢您的建议,发现可能确实存在差异。那请问同一年内同一对象的事件有办法合并到同一行吗?

板凳
DΘstinyじò 发表于 2022-2-7 20:19:34
尝试以下代码:
  1. stack  stkcd  year var1 stkcd  year var2  stkcd  year var3 , into( stkcd  year var0) clear
  2. drop _stack
  3. drop if var0==""
  4. duplicates drop stkcd  year var0,force
复制代码

最后再reshape长数据转换成宽数据就行。

报纸
qianchen 发表于 2022-2-7 21:23:26
clear
input stkcd  year str10 ( var1  var2  var3)
  1     2009    A      B
  1     2009    A      A      C
  end
  gen id=_n
  reshape long var,i(id) j(num)
  drop if var==""
  duplicates drop var,force
  drop id
  reshape wide var,i(stkcd) j(num)

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-9 10:47