楼主: 三足忍者
3641 5

sas使用proc panel 提示 is not sorted in ascending sequence [推广有奖]

  • 0关注
  • 0粉丝

忍者

硕士生

5%

还不是VIP/贵宾

-

威望
0
论坛币
724 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
2019 点
帖子
51
精华
0
在线时间
106 小时
注册时间
2013-9-6
最后登录
2021-11-17

楼主
三足忍者 发表于 2016-3-25 10:41:07 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
本人在用sas处理一组非平衡面板数据的时候用到proc panel;时间是2010年到2015年的股票数据,但是在用proc panel时一直提示
Data set WORK.D2010_2015 is not sorted in ascending sequence with respect to time series ID,求问这个问题怎么解决啊


这是我用的代码
proc sort data=d2010_2015;
by year month code;
run;
proc panel data=d2010_2015;
id year code;
model ch_margin=lag_dret/fixone;
run;

下边是结果
微信截图_20090325103707.png
二维码

扫码加我 拉你入群

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

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

关键词:sequence ending sorted Panel pane sequence

沙发
三足忍者 发表于 2016-3-25 10:44:20
自己顶一下 欢迎大家来一起讨论

藤椅
dogmamongo 发表于 2016-3-25 16:01:30
id year code

你前面排序就得用 year code

however, 你的面板数据是 月份  公司  不是 年份 公司
那你就得创一个月份变量
简单作法
yyyymm=cat(year,month);

然后 依照yyyymm code排序

panel data中

id yyyymm code

这样就能完成

板凳
三足忍者 发表于 2016-3-25 22:20:23
dogmamongo 发表于 2016-3-25 16:01
id year code

你前面排序就得用 year code
你好  按照你的方法试了下 运行了2个半小时后又出现了一个错误提示
Not enough observations with non-missing model variables for model statement in cross section code=000004.sz
这个是什么造成的啊  麻烦了

报纸
dogmamongo 发表于 2016-3-26 13:12:35
英文直接跟你说了  样本观察数不够  orz
就是000004这家公司 在所有期间  恐怕只有一个有效观察值
麻烦 看一下英文
已有 1 人评分论坛币 收起 理由
三足忍者 + 5 精彩帖子

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

地板
三足忍者 发表于 2016-3-27 23:28:57
dogmamongo 发表于 2016-3-26 13:12
英文直接跟你说了  样本观察数不够  orz
就是000004这家公司 在所有期间  恐怕只有一个有效观察值
麻烦 看 ...
我把000004的code都删掉了 但是再运行两次的时候发现000005跟000007也是一样的情况,所以现在我就不清楚为什么 这部分的数据会出现这个问题了。。。下面的图里包括了000005和000006两个code的数据,因为它只提示005跟007是有问题的,所以我认为006这部分是没有问题的,但是我找不到005跟006在条件上有什么区别呢。我想求的面板数据的回归中ch_margin是因变量 lag_dret是自变量 用fixone应该没错的吧。
求各位师傅指教
微信截图1.png 微信截图2.png 微信截图3.png 微信截图4.png

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-31 16:37