楼主: zhangheheruc
2096 10

[实际应用] 求助!SAS如何实现两表内容的不完全匹配。 [推广有奖]

  • 0关注
  • 0粉丝

初中生

80%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
1.1000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
188 点
帖子
11
精华
0
在线时间
18 小时
注册时间
2019-12-20
最后登录
2020-4-15

楼主
zhangheheruc 学生认证  发表于 2019-12-20 16:13:47 |AI写论文
20论坛币
现在我有两个表,A和B,想要实现一个功能:在B表question列中某些行包含了A表中PatentName这一列的内容,要把符合包含条件的并且B表对应的时间大于A对应的时间的这些行筛选出来。有没有大佬能帮帮我?
b.jpg a.jpg

b.xlsx
下载链接: https://bbs.pinggu.org/a-3012005.html

10.46 KB

a.xlsx

9.22 KB

沙发
gudingji 在职认证  发表于 2019-12-20 16:13:48
  1. data a1;set a;k=1;drop num;run;
  2. data b1;set b;k=1;drop num;run;

  3. proc sql;
  4.     create table c as
  5.         select a1.*,b1.date,b1.question from a1 inner join b1 on a1.k=b1.k;
  6. quit;

  7. data c1;
  8.     set c;
  9.     if kindex(question,patentname) and date gt time then output;
  10. run;     
复制代码
已有 1 人评分经验 收起 理由
eijuhz + 20 热心帮助其他会员

总评分: 经验 + 20   查看全部评分

藤椅
wps930720 在职认证  发表于 2019-12-21 09:55:19
“要把符合包含条件的并且B表对应的时间大于A对应的时间的这些行筛选出来”,符合什么条件

板凳
zhangheheruc 学生认证  发表于 2019-12-21 14:34:06
wps930720 发表于 2019-12-21 09:55
“要把符合包含条件的并且B表对应的时间大于A对应的时间的这些行筛选出来”,符合什么条件
包含条件就是   B表中question列包含了A表中PatentName这一列的内容

报纸
wps930720 在职认证  发表于 2019-12-21 14:41:56
zhangheheruc 发表于 2019-12-21 14:34
包含条件就是   B表中question列包含了A表中PatentName这一列的内容
判断是否包含PatentName字段中任一观测的值吗

地板
zhangheheruc 学生认证  发表于 2019-12-22 10:09:16
wps930720 发表于 2019-12-21 14:41
判断是否包含PatentName字段中任一观测的值吗
抱歉是我表述不清,时间比patentname对应的时间靠后的观测值~

7
jg.sas 发表于 2019-12-23 13:28:12
  1. data  a;
  2.         aaa="hello world";output;
  3.         aaa="how are you";output;
  4. run;

  5. data  b;
  6.         bbb="world";output;
  7.         bbb="you";output;
  8. run;

  9. proc sql;
  10.         create table c as
  11.         select * from a,b;
  12. run;

  13. data cc;
  14.         set c;
  15.         ccc=index(aaa,bbb);
  16.         ccc=indexw(aaa,bbb);
  17.         ccc=tranwrd(aaa,bbb,"");**利用length判断;
  18. run;
复制代码

现在想到的是a和b的那两列做排列组合,
然后再对比字符串,
目前在对比字符串的过程中出现的了问题
暂时想不到好的解决办法

8
zhangheheruc 学生认证  发表于 2019-12-24 09:39:32
gudingji 发表于 2019-12-23 16:01
似乎不行诶,kindex查找不到

9
zhangheheruc 学生认证  发表于 2019-12-24 09:40:12
jg.sas 发表于 2019-12-23 13:28
现在想到的是a和b的那两列做排列组合,
然后再对比字符串,
目前在对比字符串的过程中出现的了问题
感谢你,我也做完了两列的匹配,但是还没找到对比字符串的方法

10
gudingji 在职认证  发表于 2019-12-24 11:52:23
zhangheheruc 发表于 2019-12-24 09:39
似乎不行诶,kindex查找不到
kindex能做到呀

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

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