全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3075 13
2012-02-22
数据表data,含有两列x和y,对应x的1、2、3、4、5求y均值,2、3、4、5、6求y均值,3、4、5、6、7求y均值,以此类推……分别求y的均值
x      y
1      1.5
2      2.5         
3      3.5
4      4.5
5      3.5
6      6.5
7      7.5
8      5.5
9      6.5
10    8.5
11    2.5
12    3.5
小弟sas刚入门,真心不知道怎么编代码,求sas牛人指教。
二维码

扫码加我 拉你入群

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

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

全部回复
2012-2-23 09:41:19
data test;
   input x y;
cards;
1      1.5
2      2.5
3      3.5
4      4.5
5      3.5
6      6.5
7      7.5
8      5.5
9      6.5
10    8.5
11    2.5
12    3.5
;
run;
proc expand data=test out=need ;
   convert y=mean5/method=none transformout=(movave 5);
run;

data need;
   set need;
   if x<5 then do;
      mean5=.;
          end;
run;
二维码

扫码加我 拉你入群

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

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

2012-2-23 11:19:23
yugao1986 发表于 2012-2-23 09:41
data test;
   input x y;
cards;
你好,小弟还想请教一下。比如说股票001有20个数据,股票002有30个数据,怎样对每个股票按时间分别排序,得到序列1,,,20,1,,,30.
二维码

扫码加我 拉你入群

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

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

2012-2-23 11:44:36
cherrystrawbery 发表于 2012-2-23 11:19
你好,小弟还想请教一下。比如说股票001有20个数据,股票002有30个数据,怎样对每个股票按时间分别排序, ...
mysas论坛有过关于移动平均的讨论,我记录下来了,你可以看看.http://blog.csdn.net/yugao1986/article/details/6301820
复制代码
二维码

扫码加我 拉你入群

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

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

2012-2-23 11:52:23
data test;
   input x y;
cards;
1      1.5
2      2.5
3      3.5
4      4.5
5      3.5
6      6.5
7      7.5
8      5.5
9      6.5
10    8.5
11    2.5
12    3.5
;
run;

proc expand data=test out=Random method=none;
        convert y=mean1 / transformout=(movave 3);
run;

data random;
    set random;
    if x<8; (8之后应该就不能做5个数的moving avg了吧?)
run;
二维码

扫码加我 拉你入群

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

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

2012-2-24 11:01:55
sunset1986 发表于 2012-2-23 11:52
data test;
   input x y;
cards;
想问句为什么这么多人写那个cards的代码呢?输入很复杂呢~~
新手求问。。。
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群