请选择 进入手机版 | 继续访问电脑版
楼主: vanejing
1698 5

[实际应用] 求助,如果统计不同列某一字段出现各地个数 [推广有奖]

  • 0关注
  • 0粉丝

学前班

80%

还不是VIP/贵宾

-

威望
0
论坛币
10 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
193 点
帖子
3
精华
0
在线时间
2 小时
注册时间
2010-4-15
最后登录
2018-10-21

vanejing 发表于 2018-8-18 20:50:18 来自手机 |显示全部楼层 |坛友微信交流群

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
数据形式如下:
编号    地区   名称   情况1  情况2 情况3
1           北京  a          Z1        A1       S1
2           北京 a          B1        Z1        S1
3           北京 a           S1        Z1      
4           北京 b          C1        A1
5           北京 b          A1
6           上海 a         S1       Z
Xxx
Xxx
想要求北京+a中Z1、S1等个出现的次数
求大神帮忙,谢谢
二维码

扫码加我 拉你入群

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

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

关键词:数据形式

liuxin9023 发表于 2018-8-18 21:02:21 |显示全部楼层 |坛友微信交流群
如果是Excel的数据形式,用coutifs可以解决该问题。

使用道具

vanejing 发表于 2018-8-18 21:43:27 |显示全部楼层 |坛友微信交流群
数据量比较大,有SAS语句可以做的吗,谢谢

使用道具

whymath 发表于 2018-8-18 22:47:37 |显示全部楼层 |坛友微信交流群
请参见此贴
SAS分组求和问题
https://bbs.pinggu.org/thread-6572943-1-1.html
SASUSER

使用道具

steven_1017 发表于 2018-8-19 10:04:33 |显示全部楼层 |坛友微信交流群
楼主,是不是要求得到任意的城市、名称、情况的统计呢?
可以直接写一个macro,然后调用即可,本人用北京、a,然后以情况1为需要统计的column(当然可以选择其他的情况2、3,仅仅在调用的macro里面改个数字即可),假如需要其他数据,直接再调用几次macro,改一下参数即可,假如希望统计的结果在一个表上,那就merge一下即可。你看看下面的代码是不是你需要的?
data test;
input location $ type $ situ1 $ situ2 $ situ3 $;
datalines;
Beijing a z1 a1 s1
Beijing a z1 z1 s1
Beijing a s1 z1 a1
Beijing b c1 a1 b1
Beijing b a1 z1 b1
Shanghai a s1 z1 b1
;
run;
/*The following code is to calculate the number of z1 and s1 under the condition where location=Beijing and type=a*/
/*Adopt macro to facilitate programming*/
%macro cnt(n,var,loc=,tp=);
proc sql;
create table cnt&var as
select location,type,count(situ&n) as NumOf&var
from test
where location="&loc" and type="&tp" and situ&n="&var"
group by location,type,situ&n;
quit;
%mend;
/*Call macro cnt*/
%cnt(1,z1,loc=Beijing,tp=a) ;
%cnt(1,s1,loc=Beijing,tp=a) ;
/*Merge tables generated by macro cnt*/
data cb;
merge cnts1 cntz1;
run;

使用道具

steven_1017 发表于 2018-8-19 10:13:44 |显示全部楼层 |坛友微信交流群
steven_1017 发表于 2018-8-19 10:04
楼主,是不是要求得到任意的城市、名称、情况的统计呢?
可以直接写一个macro,然后调用即可,本人用北京、 ...
上面程序里面的input语句,几个变量拷贝过来,后面$符号没有了,自己加一下吧。
input location $ type $ situ1 $ situ2 $ situ3 $;

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-3-29 23:19