我是SAS的新手,需要找到一种方法来执行以下操作:
我有两个数据集:
Users (user_id, friends)
(朋友user_id
与#34;分开,")Reviews (user_id, review_id, business_id, text)
我已在user_id
合并了两者。现在我需要知道用户朋友的评论百分比与用户审核的相同业务。
我想我需要一个存储过程(但我也是SQL的新手)。任何提示如何开始?
答案 0 :(得分:0)
我首先要重构你的用户表,将朋友存储为单独的记录而不是单个列表值:
var array1 = [{name:'abc', age:34},{name:'xyz', age:44},{name:'fng', age:54}];
var array2 = [{name:'dgc', age:54}];
var arrays = [array1, array2];
var merged = arrays.reduce((acc, next) => acc.concat(next));
console.log(merged);
然后,您可以通过将该表与data users(drop=friends);
set users;
do i=1 to countw(compress(friends_list),',');
friend=scan(compress(friends_list),i,',');
output;
end;
run;
一起加入两次来计算该百分比,每位用户一次,每位朋友一次:
reviews