SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

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

请教SAS问题

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2006-8-7 09:52:03 | 只看该作者

请教SAS问题

[quote:7be79]请教两个问题

1.proc sql ....run; 的时候,生成的数据怎么写到例如work.sql这样的数据集中。

2.同一个数据集中不同观测值之间的运算怎么能处理的简单些?
    例如:
               基金名称       日期         单日净值   
               A基金         20060101       1.002
                       A基金         20060102       1.005
                       B基金         20060101       1.011
                       B基金         20060102       1.001


    现在要显示       基金名称     涨跌      单日净值    日期
                                 A基金        ....           1.005           20060102
                                 B基金        ....           1.001           20060102

   涨跌 = 当日-昨日/昨日[/quote:7be79]

[code:7be79]data fund;
input name $ date:yymmdd10. value;
format date yymmdd10.;
datalines;
A基金 20060101 1.002
A基金 20060102 1.005
B基金 20060101 1.011
B基金 20060102 1.001
;
run;

proc sort data=fund;
by name date;
run;

data fund(drop=value_old);
set fund;
by name date;
value_old=lag(value);
if first.name then diff=.;
else diff=(value-value_old)/value_old;
run;

proc sql noprint;
create table work.sql as
select * from fund;
quit;[/code:7be79]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2006-8-7 14:02:12 | 只看该作者

re

你用sql模块要生成包含什么内容的数据?(你的代码里头仅仅是一个数据的复制?)
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2006-8-7 20:23:18 | 只看该作者

你的代码不对吗??
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-10 09:38 , Processed in 0.067549 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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