2017-05-30 48 views
-1

我有关键字列表; CORPORATE,房地产,竞争,贸易,争端SAS计数关键字列

我希望能够指望这些关键字practice_area1-Practice_area10列之间出现的出现次数。因此,我想扫描10列并创建新列。每个新列将代表每个关键字(上面)和计数作为一个值,例如公司4

一旦这一说法跑,我们有我们的新栏目,我想创建一个新的变量“实践小组”,这是填充了我们刚刚创建的新变量的最高计数。下面的数据集的数据应该如何看一个例子:

enter image description here

请能有人给我最好的办法的一些建议这样做吗?

非常感谢

克里斯

+0

请出示什么办法你都试过了,并说明为什么你不满意它。 – Quentin

+0

我目前刚刚被读取功能可用,例如COUNT周,扫描和索引功能,但我在如何将它们结合在一起,使其在这个例子中工作步履维艰。 –

回答

0

所有你需要做的是使用makean阵列的所有要检查的列。然后,通过使用计数函数循环遍历每一列的单词,并在循环中添加计数。 以下代码检查三列和三个值。您可以将此代码应用于任意数量的列。

data have(drop= i); 
col1 = 'CORPORATE, REAL ESTATE, REAL ESTATE'; 
col2= 'CORPORATE, CORPORATE, TRADE, TRADE, TRADE, REAL ESTATE'; 
col3= 'TRADE, TRADE, DISPUTE,REAL ESTATE'; 
array col[*] col1 - col3; 
realestate=0;/*starting with zero*/ 
trade=0; 
corporate= 0; 
do i = 1 to 3; 
realestate =realestate+count(col(i), 'REAL ESTATE');/* adding through the loop*/ 
TRADE =trade+count(col(i), 'TRADE'); 
CORPORATE= corporate+count(col(i), 'CORPORATE'); 
end; 
run; 
+0

这适用于我。非常感谢您回复我。 –