楼主: spssone
1356 3

求助查询语句? [推广有奖]

  • 1关注
  • 3粉丝

讲师

44%

还不是VIP/贵宾

-

威望
0
论坛币
78 个
通用积分
1.0035
学术水平
2 点
热心指数
3 点
信用等级
2 点
经验
98 点
帖子
341
精华
0
在线时间
631 小时
注册时间
2008-9-20
最后登录
2022-12-29

楼主
spssone 发表于 2011-12-22 00:06:36 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

1、 表中有5列,第1列名为CITY,其值是中国东部沿海地区的5个城市,第2列为公司名,第3列为人名,第4列为SEX,值有‘F’,’M’两类,第五列为销售收入。现在需要进行分类求和,结果形如下表,需要在空格上填上销售收入总额。请简述如何操作

 

F

M

上海

 

 

天津

 

 

深圳

 

 

珠海

 

 

大连

 

 

青岛

 

 









应该类似于EXCEL里面数据透视表的结果?

二维码

扫码加我 拉你入群

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

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

关键词:数据透视表 EXCEL 销售收入 exce City 销售 EXCEL 中国 青岛

沙发
spssone 发表于 2011-12-22 00:08:46
附上数据表

data b;
input city$        sa$ lo;
cards;
大连 f 7
大连 m 13
大连 f 19
大连 m 25
青岛 m 8
青岛 f 14
青岛 m 20
青岛 f 26
上海 f 3
上海 m 9
上海 f 15
上海 m 21
深圳 m 5
深圳 f 11
深圳 m 17
深圳 f 23
天津 m 4
天津 f 10
天津 m 16
天津 f 22
珠海 f 6
珠海 m 12
珠海 f 18
珠海 m 24
;

藤椅
shenliang_111 发表于 2011-12-22 09:40:58
spssone 发表于 2011-12-22 00:08
附上数据表

data b;
  1. proc means data=b  noprint nway;
  2. output out=result(drop=_:)
  3. sum(lo)=sum_lo;
  4. class  city sa;
  5. run;
  6. proc transpose data=result out=result2(drop=_name_);
  7. id sa;
  8. by city;
  9. run;
复制代码

板凳
maidenhan 发表于 2011-12-22 10:21:16
提供一种不用库函数的方法:

data _null_;
if _n_ = 1 then do;
  dcl hash h(ordered:'y');
  h.definekey("city");
  h.definedata("city","f","m");
  h.definedone();
end;
set b end = eof;
if h.find() = 0 then do;
  if sa = 'f' then f + lo;
  else if sa = 'm' then m + lo;
  h.replace();
end;else do;
  m = 0;
  f = 0;
  if sa = 'f' then f = lo;
  else if sa = 'm' then m = lo;
  h.add();
end;
if eof then h.output(dataset:"c");
run;

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

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