全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1803 4
2008-01-22

求教:排序的问题

     有6种商品(A,B,C,D,E,F),下面分别是它们2天的价格:       

序号

A

B

C

D

E

F

1

1.9

1.2

2.0

3.1

1.0

1.8

2

2.5

1.5

1.0

2.3

1.6

1.4

如何编程,制成下表:

序号

X1

X2

X3

X4

X5

X6

1

2

B

  变量X1,X2,X3,X4,X5,X6  是降序排列 

表示第1天,商品D价格最高,C第2。。。E最低。

到第2天,商品A价格最高,D第2。。。C最低。

再第3天。。。。。。。。

       谢谢!!!!!

     

二维码

扫码加我 拉你入群

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

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

全部回复
2008-1-23 12:18:00

data a;
input id$ D1 D2;
cards;
A 1.9 2.5
B 1.2 1.5
C 2 1
D 3.1 2.3
E 1 1.6
F 1.8 1.4
;
RUN;

proc sort data=a(keep=id d1 rename=(id=id1)) out=b1;
 by descending d1 ;
run;

proc sort data=a(keep=id d2 rename=(id=id2)) out=b2;
 by descending d2;
run;

data out;
 merge b1 b2;
run;

如果每天都有数据,需要把上面所有的程序做成宏程序.

二维码

扫码加我 拉你入群

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

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

2008-1-23 16:21:00

首先,感谢版主!您亲自教导,倍受感动。

我还有几个问题,请教老师:

1、我的数据已经以 1楼上表的形式存入SAS数据集中,怎样一行一行地(每天的6种商品)读取再

   按降序排列。

2、输出方式按 1楼下表的形式输出,只需要一行一行地输出商品名称的降序排列(即 DCAFBE),

   不需要价格。

  谢谢!!!!!

二维码

扫码加我 拉你入群

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

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

2008-1-24 03:17:00

1. proc transpose, transfer data as:

         _name_  x1 x2 ............

           A     1.9  2.5

           B     1.2  1.5

           C     2.0  1.0

           D     3.0  2.3

           E     1.0  1.6

           F     1.8  1.4

2. use macro, every time choose _Name_, X&i as a new dataset, do sort.

3.transfer back.

二维码

扫码加我 拉你入群

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

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

2008-1-24 18:24:00

Thank you very much !!!

    不知各位老师,还有没有其他方法? 谢谢!!

二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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