全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2049 6
2010-06-12
有一个表是在每个省,城市,区的各个产品的销量。 如下:
province  city district  product  sales
A1 B1 C1 P1 100
A1 B1 C1 P2 200
A2 B2 C2 P1 1289
A2 B2 C2 P2 500
A2 B2 C2 P3 285
A3 B3 C3 P1 40
另外一个表是各个商店的系数,如下,
province  city district  Store Factors
A1 B1 C1 T1 1.5
A1 B1 C1 T2 2.1
A2 B2 C2 T1 1.2
A2 B2 C2 T2 1.5
A3 B3 C3 T1 2
我现在想要的是
province  city district  Product Store   Sales
A2 B2 C2 P1 T1       =1289*1.2/(1.2+1.5)
A2 B2 C2 P1 T2       =1289*1.5/(1.2+1.5)
A2 B2 C2 P2 T1       =500*1.2/(1.2+1.5)
A2 B2 C2 P2 T2       =500*1.5/(1.2+1.5)
A2 B2 C2 P3 T1       =285*1.2/(1.2+1.5)
A2 B2 C2 P3 T2       =285*1.5/(1.2+1.5)
也就是把一表中的每一个产品的销量都按比例分到各个店里,比例是根据第二个表的店的系数。
每个地方的品种数量和商店的数量都不一样, 我要把所有的组合都列出来。
谢谢!!
二维码

扫码加我 拉你入群

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

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

全部回复
2010-6-12 13:39:29
第一张表里没有商店 第二张表里每个省,城市,区的商店系数又不一样
这个怎么算呢?
二维码

扫码加我 拉你入群

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

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

2010-6-12 14:20:55
复制代码
希望是对的
希望对你有用......
二维码

扫码加我 拉你入群

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

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

2010-6-12 15:21:43
助人乃快乐之本
像楼上的同志学习
二维码

扫码加我 拉你入群

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

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

2010-6-12 20:29:32
谢谢楼上, 上班再试一下,家里没有SAS。
二维码

扫码加我 拉你入群

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

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

2010-6-13 01:41:08
data a1;
input province $   city  $ district $  product $ sales;
cards;
A1 B1 C1 P1 100
A1 B1 C1 P2 200
A2 B2 C2 P1 1289
A2 B2 C2 P2 500
A2 B2 C2 P3 285
A3 B3 C3 P1 40
;
run;
data a2;
input x1 $   x2 $ x3$  store $ factor;
cards;
A1 B1 C1 T1 1.5
A1 B1 C1 T2 2.1
A2 B2 C2 T1 1.2
A2 B2 C2 T2 1.5
A3 B3 C3 T1 2
;
run;
data a3;
retain sum;
set a1;
by province city district;
if first.province or first.city or first.district then do;
sum=0;
do i=1 to n;
set a2 nobs=n point=i;
if province=x1 and city=x2 and district=x3 then sum+factor;
end;end;
do i=1 to n;
set a2 nobs=n point=i;
if province=x1 and city=x2 and district=x3 then do;
sale=sales*factor/sum;
output;
end;end;
drop sum x1-x3;
run;
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群