楼主: scarfacetony
1300 3

求助一个匹配结果 [推广有奖]

  • 2关注
  • 2粉丝

讲师

84%

还不是VIP/贵宾

-

TA的文库  其他...

从零开始

数据分析书籍资料

他山之石

威望
0
论坛币
3204 个
通用积分
10.4100
学术水平
12 点
热心指数
13 点
信用等级
13 点
经验
35351 点
帖子
256
精华
0
在线时间
829 小时
注册时间
2012-2-16
最后登录
2020-2-26

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
有两份数据:
A数据为两个用户对应表,如:

u1 u2
u2 u3
u1 u3

B数据表为各用户购买物品明细表,如:

u1 apple
u1 banana
u2 apple
u3 banana

我想根据这两份表,找出A表每个对应用户是否有购买同一物品的情况

输出:
u1 u2 1       (都购买了apple)
u2 u3 0        (无交叉)
u1 u3 1        (都购买了banana)


求助各位大神了。
二维码

扫码加我 拉你入群

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

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

关键词:banana Apple appl BAN App apple 明细表 数据表 用户

看了这个视频,我于是有了进股市的信心!
https://bbs.pinggu.org/thread-2787427-1-1.html
沙发
ziyenano 发表于 2013-1-31 18:04:28 |只看作者 |坛友微信交流群
data ex;
input usr1 $ usr2 $;
cards;
u1 u2
u2 u3
u1 u3
;
run;

data ex1;
input usr $ fruits $;
cards;
u1 apple
u1 banana
u2 apple
u3 banana
;
run;
proc sql;
create table ex2 as
select usr1,usr2,sum(f1=f2) from
(select c.*,b.fruits as f2 from
(select a.*,b.fruits as f1 from ex a inner join ex1 b
on a.usr1=b.usr ) as c inner join ex1 b on c.usr2=b.usr)
group by usr1,usr2;
quit;
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
scarfacetony + 1 + 1 + 1 分析的有道理

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

使用道具

藤椅
zhangzachary 发表于 2013-1-31 18:08:10 |只看作者 |坛友微信交流群
  1. data a;
  2. user1="u1";user2="u2";output;
  3. user1="u2";user2="u3";output;
  4. user1="u1";user2="u3";output;
  5. run;

  6. data b;
  7. length thing $10;
  8. user="u1";thing="apple";output;
  9. user="u1";thing="banana";output;
  10. user="u2";thing="apple";output;
  11. user="u3";thing="banana";output;
  12. run;

  13. proc sort data=b noduprecs;
  14.   by user thing;
  15. run;

  16. data fin;
  17.   result=.;
  18. run;

  19. %global uu1 uu2 num;
  20. %macro ff(uu1=,uu2=);
  21.   proc sort data=b(where=(user in ("&uu1.","&uu2."))) out=b2 ;
  22.     by thing;
  23.   run;

  24.   data result;
  25.     set b2 end=eof;
  26.         by thing;
  27.         retain result 0;
  28.         if first.thing=0 then result=1;
  29.         if eof then output;
  30.         keep result;
  31.   run;

  32.   data fin;
  33.     set fin result;
  34.         if ^missing(result);
  35.   run;
  36. %mend ff;

  37. data _null_;
  38.   set a;
  39.   call execute ('%ff(uu1='||user1||', uu2='||user2||')');
  40. run;

  41. data final;
  42.   set a;
  43.   set fin;
  44. run;
  45.   
复制代码
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
scarfacetony + 1 + 1 + 1 分析的有道理

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

寒冰凤凰 My blog: http://blog.sina.com.cn/u/1058955485

使用道具

板凳
scarfacetony 发表于 2013-1-31 18:47:38 |只看作者 |坛友微信交流群
多谢楼上两位大神解读
看了这个视频,我于是有了进股市的信心!
https://bbs.pinggu.org/thread-2787427-1-1.html

使用道具

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

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

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

GMT+8, 2024-5-10 04:32