楼主: susanzhu
3316 11

如何在多个有序变量中寻找多个关键字 [推广有奖]

  • 0关注
  • 0粉丝

已卖:127份资源

硕士生

40%

还不是VIP/贵宾

-

威望
0
论坛币
1347 个
通用积分
0.4204
学术水平
2 点
热心指数
3 点
信用等级
2 点
经验
1961 点
帖子
87
精华
0
在线时间
141 小时
注册时间
2007-11-6
最后登录
2024-10-20

楼主
susanzhu 发表于 2016-8-13 14:05:28 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我想在图片中的数据集test中选择item1-item7中文字部分带有“销售费用”“管理费用”或者“往来款”字符的所有观测(包括上面的文字和下面紧跟着的数字部分),即如果item1-item7中每个item只要包含“销售费用”,“管理费用”或者“往来款”则保留,如果某个观测都不包含则不保留该观测。
1.jpg
二维码

扫码加我 拉你入群

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

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

关键词:关键字 item 销售费用 管理费用 test 关键字 如何

回帖推荐

wwang111 发表于2楼  查看完整内容

代码没有经过测试,其中AAA, BBB, CCC就是你要寻找的关键字,我没用过中文版,不确定换成中文能不能实现,请楼主先试一下: data allitem; set test; length allitem $1000; allitem=catx('',of item1-item7); run; proc sql; create table wanted as select * from test where daima in (select distinct daima from allitem where (index(allitem,"AAA") or index(allitem,"BBB") or index(allitem,"CCC"))); ...

沙发
wwang111 发表于 2016-8-14 18:50:20
代码没有经过测试,其中AAA, BBB, CCC就是你要寻找的关键字,我没用过中文版,不确定换成中文能不能实现,请楼主先试一下:

data allitem;
set test;
length allitem $1000;
allitem=catx('',of item1-item7);
run;

proc sql;
create table wanted as
select * from test
where daima in
(select distinct daima from allitem
   where (index(allitem,"AAA") or index(allitem,"BBB") or index(allitem,"CCC")));
quit;

藤椅
susanzhu 发表于 2016-8-14 20:39:48
wwang111 发表于 2016-8-14 18:50
代码没有经过测试,其中AAA, BBB, CCC就是你要寻找的关键字,我没用过中文版,不确定换成中文能不能实现,请 ...
大侠,我试了,可以的,多谢了。另外,如果我一次只搜索AAA,而且只保留关键字有AAA的item要怎么做呢?您觉得如果我转置一下是不是好做一些呢?再次感谢。

板凳
wwang111 发表于 2016-8-14 20:53:32
我不是很明白你说的意思,能不能举个简单的例子?

只保留AAA的item,如果daima=1,item1里面有AAA, 但是daima=2时,item1里面就没有AAA了,该怎么处理?
做转置之后,数据集的结构就改变了,你想要的数据集是什么格式的?

报纸
susanzhu 发表于 2016-8-14 21:02:48
wwang111 发表于 2016-8-14 20:53
我不是很明白你说的意思,能不能举个简单的例子?

只保留AAA的item,如果daima=1,item1里面有AAA, 但是 ...
我的意思是现在搜索“AAA”后包含AAA的观测以及item1-item7都保留了,在这个基础上我想能不能只保留关键词包含AAA的那个item,而把其他item都去掉。观测方面保持现有状态就行。

地板
susanzhu 发表于 2016-8-14 21:02:58
wwang111 发表于 2016-8-14 20:53
我不是很明白你说的意思,能不能举个简单的例子?

只保留AAA的item,如果daima=1,item1里面有AAA, 但是 ...
我的意思是现在搜索“AAA”后包含AAA的观测以及item1-item7都保留了,在这个基础上我想能不能只保留关键词包含AAA的那个item,而把其他item都去掉。观测方面保持现有状态就行。

7
susanzhu 发表于 2016-8-14 21:02:58
wwang111 发表于 2016-8-14 20:53
我不是很明白你说的意思,能不能举个简单的例子?

只保留AAA的item,如果daima=1,item1里面有AAA, 但是 ...
我的意思是现在搜索“AAA”后包含AAA的观测以及item1-item7都保留了,在这个基础上我想能不能只保留关键词包含AAA的那个item,而把其他item都去掉。观测方面保持现有状态就行。

8
susanzhu 发表于 2016-8-14 21:04:04
wwang111 发表于 2016-8-14 20:53
我不是很明白你说的意思,能不能举个简单的例子?

只保留AAA的item,如果daima=1,item1里面有AAA, 但是 ...
至于转置是我自己反复弄程序后没想出合适的程序,想着如果转置了是不是好做一点。您可以忽略。回头我再研究一下。

9
wwang111 发表于 2016-8-14 21:15:55
这还是我刚才的问题,比如现在是这样,第一列是daima, 后面是item1 - item3,只保留AAA,那么得到的数据集应该是什么样?
1 AAA BBB CCC
1   1     2      3
2 DDD EEE AAA
2   2     3     4
3 DDD AAA FFF
3   3     4      5
只有一个罗纳尔多

10
susanzhu 发表于 2016-8-14 21:23:40
wwang111 发表于 2016-8-14 21:15
这还是我刚才的问题,比如现在是这样,第一列是daima, 后面是item1 - item3,只保留AAA,那么得到的数据集应 ...
刚才可能没想清楚也没说清楚,我的理想结果是这样的:

本来根据您的代码得到的结果是
daima item1   item2   item3
1       AAA    cde      FCD
1       134     23       345
2       EDF     ADE        AAA
2       567      23       1345
然后把带有办公费的item另外定义为一个特定变量,如bangong,这样就可以得到

daima item1   item2   item3     bangong
1       AAA    cde      FCD      AAA
1       134     23       345     134
2       EDF     ADE        AAA   AAA
2       567      23       1345   1345
不知道说清楚了没有。

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

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