SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 674|回复: 2
打印 上一主题 下一主题

<求助> 这怎么做啊?

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2010-6-12 12:07:16 | 只看该作者

<求助> 这怎么做啊?

有一个表是在每个省,城市,区的各个产品的销量。 如下:
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)

也就是把一表中的每一个产品的销量都按比例分到各个店里,比例是根据第二个表的店的系数。
每个地方的品种数量和商店的数量都不一样, 我要把所有的组合都列出来。

谢谢!!
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2010-6-12 13:39:04 | 只看该作者

Re: <求助> 这怎么做啊?

[code:l9mh71ad]data sales;
        input Province $ City $ District $ Product $ Sales;
datalines;
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
;
data factor;
        input province $ city $ district $ Store $ Factors;
datalines;
A1 B1 C1 T1 1&#46;5
A1 B1 C1 T2 2&#46;1
A2 B2 C2 T1 1&#46;2
A2 B2 C2 T2 1&#46;5
A3 B3 C3 T1 2
;
proc sql;
        create table temp as
                select f&#46;province,f&#46;city,f&#46;district,s&#46;product,f&#46;store,
                                s&#46;sales*f&#46;factors/sum_factors as Sales format=8&#46;2
                        from factor f,sales s,
                                (select province,city,district,sum(factors) as sum_factors
                                        from factor
                                        group by province,city,district) sum
                        where f&#46;province=s&#46;province=sum&#46;province and
                                        f&#46;city=s&#46;city=sum&#46;city and
                                        f&#46;district=s&#46;district=sum&#46;district
                        order by f&#46;province,f&#46;city,f&#46;district,s&#46;product,f&#46;store;
quit;[/code:l9mh71ad]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2010-6-15 06:46:26 | 只看该作者

Re: <求助> 这怎么做啊?

谢谢, 好用!!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2026-2-4 03:31 , Processed in 0.066702 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表