SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 845|回复: 3
打印 上一主题 下一主题

请教:如何按照不同对数据进行操作

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2008-3-27 00:31:45 | 只看该作者

请教:如何按照不同对数据进行操作

如果用宏来写该怎么弄?
谢谢

例如:
日期            帐号    股票代码        成交金额      买卖 方向  
20070203            a8889        600019               30000                  sell
20070203            a8889        600019               42000                  buy
20070203            a8887        600019               30000                  sell
20070203            a8887        600019               30000                  sell
20070203            a8887        600019               30000                  sell
20070205            a8887        600019               30000                  sell
20070205            a8889        600019               30000                  sell
20070207            a8889        600019               30000                  sell
20070209            a8889        600019               30000                  sell
20070206            a8889        600019               30000                  sell
20070206            a8889        600019               30000                  sell


分别计算不同的交易日期不同的帐户每天的成交情况

谢谢大家了
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2008-3-28 16:32:14 | 只看该作者

Re: 请教:如何按照不同对数据进行操作

不太清楚你的 objective, 可以詳盡些嗎?

是想用 proc mean or proc summary 之類的計算嗎?
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2008-4-1 11:26:52 | 只看该作者

Re: 请教:如何按照不同对数据进行操作

似乎是个分组求和的问题。
date          countID ID      dail   bs
日期 帐号 股票代码 成交金额 买卖 方向
20070203 a8889 600019 30000 sell
20070203 a8889 600019 42000 buy
20070203 a8887 600019 30000 sell
20070203 a8887 600019 30000 sell
20070203 a8887 600019 30000 sell
20070205 a8887 600019 30000 sell
20070205 a8889 600019 30000 sell
20070207 a8889 600019 30000 sell
20070209 a8889 600019 30000 sell
20070206 a8889 600019 30000 sell
20070206 a8889 600019 30000 sell

proc sort data=a;by date countid;run;
proc means data=a sum; var dail;by date countid;run;
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
地板
 楼主| 发表于 2008-4-1 15:46:12 | 只看该作者

Re: 请教:如何按照不同对数据进行操作

我想楼主应该是这个意思!~生成数据集

data test;
input date yymmdd8. account$ code bv bs$;
cards;
20070203 a8889 600019 30000 sell
20070203 a8889 600019 42000 buy
20070203 a8887 600019 30000 sell
20070203 a8887 600019 30000 sell
20070203 a8887 600019 30000 sell
20070205 a8887 600019 30000 sell
20070205 a8889 600019 30000 sell
20070207 a8889 600019 30000 sell
20070209 a8889 600019 30000 sell
20070206 a8889 600019 30000 sell
20070206 a8889 600019 30000 sell
;
run;
proc sort data=test;
by date account;
run;
proc means sum;
var bv;
by date account;
output out=a sum=sum_bv;
run;
data result;
set a(rename=(sum_bv=sum));
keep date account sum;
format date yymmdd10.;
run;
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-4 16:20 , Processed in 0.072057 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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