楼主: 红叶夕歌
6824 5

[面板数据求助] 请问如何生成面板数据/如何生成新观测 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

31%

还不是VIP/贵宾

-

威望
0
论坛币
800 个
通用积分
9.3613
学术水平
5 点
热心指数
5 点
信用等级
5 点
经验
4516 点
帖子
16
精华
0
在线时间
292 小时
注册时间
2012-2-14
最后登录
2025-9-18

楼主
红叶夕歌 发表于 2018-6-30 16:32:25 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我有公司数据: 公司1,公司2, 公司3(共m行)
有时间序列数据: 2001,2002,2003(共n行)
请问如何生成面板数据,使之有m*n行?

生成后形式如下:
公司1   2001
公司1   2002
公司1   2003
公司2   2001
公司2   2002
公司2   2003
公司3   2001
公司3   2002
公司3   2003


不用stata也可以。有很多行无法手工添加。感谢!
二维码

扫码加我 拉你入群

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

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

关键词:stata 面板数据 添加观测 横向合并

沙发
……may 发表于 2018-6-30 17:19:23
local N = m  //研究对象的个体数
local T = n  //研究的年份
local NT = `N'*`T'
set obs `NT'
set seed 1257911  //种子值
egen id =seq(),from(1) to(`N') block(`T') //设定T,N的值
sort id
by id: gen year = _n + 2002
tsset id year

藤椅
黃河泉 在职认证  发表于 2018-7-1 07:12:30
试试
  1. * Example generated by -dataex-. To install: ssc install dataex
  2. clear
  3. input float year
  4. 2001
  5. 2002
  6. 2003
  7. end

  8. tempfile year
  9. save `year'

  10. * Example generated by -dataex-. To install: ssc install dataex
  11. clear
  12. input str7 id
  13. "公司1"
  14. "公司2"
  15. "公司3"
  16. end

  17. cross using `year'
  18. sort id year
复制代码
已有 1 人评分论坛币 收起 理由
yishuchanglq + 2 精彩帖子

总评分: 论坛币 + 2   查看全部评分

板凳
黃河泉 在职认证  发表于 2018-7-1 07:13:01
  1. . list, sep(3)

  2.      +--------------+
  3.      |    id   year |
  4.      |--------------|
  5.   1. | 公司1   2001 |
  6.   2. | 公司1   2002 |
  7.   3. | 公司1   2003 |
  8.      |--------------|
  9.   4. | 公司2   2001 |
  10.   5. | 公司2   2002 |
  11.   6. | 公司2   2003 |
  12.      |--------------|
  13.   7. | 公司3   2001 |
  14.   8. | 公司3   2002 |
  15.   9. | 公司3   2003 |
  16.      +--------------+
复制代码

报纸
baopengmiao 发表于 2020-10-24 16:08:28
给每个公司设定好id 再设置好年份比如2001 2002 2003
sort id year 即可

地板
SALTYFISHFIELD 学生认证  发表于 2023-12-13 20:40:08
假设公司名称变量为co_name, 时间序列变量为time_series,单独保存后:
  1. forvalues y = 2000(1)2020 {
  2.         gen co_name`y' = co_name
  3. }

  4. drop co_name
  5. reshape long co_name, i(co_name) j(year)

  6. merge m:1 year using "time_series.dta"
复制代码

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

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