楼主: 镜子儿
7295 8

[编程问题求助] 如何将一行拆分成两行,也就是将一个样本变成两个样本 [推广有奖]

  • 0关注
  • 0粉丝

博士生

26%

还不是VIP/贵宾

-

威望
0
论坛币
269 个
通用积分
0.5095
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1706 点
帖子
96
精华
0
在线时间
437 小时
注册时间
2016-9-20
最后登录
2024-5-16

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
请问如何将一行数据拆分成两行数据。比如F_FIRM变量中有两家公司(用&连接),想将这个样本拆成其他变量值不变公司名称不同的两个样本,请问如何操作?clear
input int year str6 HS1996 str198 F_FIRM
2005 "380210" "Beijing Pacific Activated Carbon Products Co. Ltd & Changji Hongke Activated Carbon Co. Ltd"
end







二维码

扫码加我 拉你入群

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

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

关键词:两个样本 一个样 activated generated activate

沙发
黃河泉 在职认证  发表于 2018-10-8 17:33:11 |只看作者 |坛友微信交流群
你若要问程序,永远附上相关资料;若附上资料,永远用 dataex 印出资料。先 ssc install dataex (并见说明),将原始 Stata 资料中具有”代表性”的一部分资料列出,以供有意回答者实验之用,并能提供具体操作指令。并请参考 http://www.jianshu.com/p/9870080fe769,  https://bbs.pinggu.org/thread-5048204-1-1.html, 与 https://bbs.pinggu.org/thread-5917273-1-1.html

使用道具

藤椅
蓝色 发表于 2018-10-8 17:53:19 |只看作者 |坛友微信交流群
先用split  拆成2列
然后再用reshape  long 变成2行
把基础命令掌握了,这些都是很简单的
  1. clear
  2. input int year str6 HS1996 str198 F_FIRM
  3. 2005 "380210" "Beijing Pacific Activated Carbon Products Co. Ltd & Changji Hongke Activated Carbon Co. Ltd"
  4. end
  5. split F_FIRM, parse(&) gen(FIRM)
  6. gen id=_n
  7. drop F_FIRM
  8. reshape long FIRM,i(id) j(group)
  9. list
复制代码

  1. . list

  2.      +---------------------------------------------------------------------------------+
  3.      | id   group   year   HS1996                                                 FIRM |
  4.      |---------------------------------------------------------------------------------|
  5.   1. |  1       1   2005   380210   Beijing Pacific Activated Carbon Products Co. Ltd  |
  6.   2. |  1       2   2005   380210              Changji Hongke Activated Carbon Co. Ltd |
  7.      +---------------------------------------------------------------------------------+
复制代码



使用道具

板凳
镜子儿 发表于 2018-10-8 19:10:07 |只看作者 |坛友微信交流群
黃河泉 发表于 2018-10-8 17:33
你若要问程序,永远附上相关资料;若附上资料,永远用 dataex 印出资料。先 ssc install dataex (并见说明) ...
不好意思,用了dataex,估计是使用方法不对没有显示出正确格式,初次发帖还有不足之处请老师见谅。

使用道具

报纸
镜子儿 发表于 2018-10-8 19:13:04 |只看作者 |坛友微信交流群
蓝色 发表于 2018-10-8 17:53
先用split  拆成2列
然后再用reshape  long 变成2行
把基础命令掌握了,这些都是很简单的
谢谢蓝色老师,很受启发。还在基础学习阶段,确实使用不够灵活。

使用道具

地板
镜子儿 发表于 2018-10-8 19:59:52 |只看作者 |坛友微信交流群
黃河泉 发表于 2018-10-8 17:33
你若要问程序,永远附上相关资料;若附上资料,永远用 dataex 印出资料。先 ssc install dataex (并见说明) ...
我知道了,使用dataex在复制时,应该把
复制代码
同时复制进去。受教了

使用道具

7
黃河泉 在职认证  发表于 2018-10-9 07:20:44 |只看作者 |坛友微信交流群
镜子儿 发表于 2018-10-8 19:10
不好意思,用了dataex,估计是使用方法不对没有显示出正确格式,初次发帖还有不足之处请老师见谅。
没问题!多练习即可!

使用道具

8
afishspring 学生认证  发表于 2022-10-23 16:20:15 |只看作者 |坛友微信交流群
蓝色 发表于 2018-10-8 17:53
先用split  拆成2列
然后再用reshape  long 变成2行
把基础命令掌握了,这些都是很简单的
你好,但如果公司数特别多,用这个方法会显示no room to add more variables
Up to 2,048 variables are allowed with this version of Stata.  Versions are available that allow up to 32,767 variables.(stataIC太小)
有没有什么办法直接得到结果,不要产生这么多中间空变量

使用道具

9
苏打水007 发表于 2023-12-5 00:46:00 |只看作者 |坛友微信交流群
afishspring 发表于 2022-10-23 16:20
你好,但如果公司数特别多,用这个方法会显示no room to add more variables
Up to 2,048 variables are ...
楼主现在知道了怎么处理了吗?

使用道具

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

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-21 18:46