楼主: akalius
1791 5

请教如何判断是否存在其他数据集的观测 [推广有奖]

  • 10关注
  • 3粉丝

已卖:155份资源

讲师

50%

还不是VIP/贵宾

-

威望
0
论坛币
3999 个
通用积分
2.8543
学术水平
4 点
热心指数
6 点
信用等级
6 点
经验
7835 点
帖子
262
精华
0
在线时间
613 小时
注册时间
2009-7-22
最后登录
2025-3-18

楼主
akalius 学生认证  发表于 2016-12-1 15:26:10 |AI写论文
200论坛币
数据集  a

name
小明
小红
小丽


数据集  b

event
小红去上学了
小美在学校
小丽在家里


想得到eventa

eventeventa
小红去上学了小红
小美在学校
小丽在家里小丽




观测很多 ,不能手动输入啊   谢谢
关键词:数据集 Event Vente vent Even 如何

沙发
高贵林 发表于 2016-12-1 15:26:11
  1. proc sql;
  2. create table eventa as
  3. select * from b left join a on find(event, trim(name)) ^=0;
  4. quit;
复制代码
已有 1 人评分论坛币 收起 理由
admin_kefu + 20 热心帮助其他会员

总评分: 论坛币 + 20   查看全部评分

藤椅
Strive、 发表于 2016-12-1 19:56:29
请问数据是中文的?

板凳
lovexialulu 发表于 2016-12-1 21:13:02
没run过 不可可不可行  
if index(event,name) then eventa=name;
已有 1 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
akalius + 5 + 2 + 2 + 2 精彩帖子

总评分: 论坛币 + 5  学术水平 + 2  热心指数 + 2  信用等级 + 2   查看全部评分

报纸
akalius 学生认证  发表于 2016-12-3 10:41:53
lovexialulu 发表于 2016-12-1 21:13
没run过 不可可不可行  
if index(event,name) then eventa=name;
肯定不行啊   

地板
manchengfu 发表于 2016-12-3 15:41:58
楼主给的数据只是给个例子还是就是这样的规则?

  1. data a;
  2. input name$;
  3. cards;
  4. 小明
  5. 小红
  6. 小丽
  7. ;
  8. run;

  9. data b;
  10. input event $20.;
  11. cards;
  12. 小红去上学了
  13. 小美在学校
  14. 小丽在家里
  15. ;
  16. run;

  17. data c;
  18. set b;
  19. name=substr(event,1,4);
  20. run;

  21. proc sort data=a;
  22. by name;
  23. run;
  24. proc sort data=c;
  25. by name;
  26. run;

  27. data d;
  28. merge c(in=in_b) a(in=in_a);
  29. by name;
  30. if in_b;
  31. if in_a then eventa=name;
  32. keep event eventa;
  33. run;
复制代码

已有 2 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
admin_kefu + 30 热心帮助其他会员
akalius + 5 + 2 + 2 + 2 精彩帖子

总评分: 论坛币 + 35  学术水平 + 2  热心指数 + 2  信用等级 + 2   查看全部评分

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-22 05:24