Time 在SAS中合并具有2个不同时间变量的数据集
嘿,伙计们 对于那些经常浏览这个网站的人,很抱歉已经有了另一个问题,但是我自己解决了最后一个问题 我在合并数据集方面还有另一个问题,似乎在数据集中计算时间是一个真正的难题。我成功地在以前的数据集中合并了几个月,但似乎我有一个最终的数据集,其中只有季度作为时间计数变量。所以,我所有的普通数据库都以1-xxx月为时间指标,而这个数据库以季度为时间指标 我仍然希望将最后一个数据库的变量(我们称之为TVOL)添加到我的工作数据库中 快速总结 季度:第0季度=1996年1月至1996年3月 月份:第0个月=1996年1月 示例:TVOL TVOL股票行情季度 1500 uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu1 52546 uuuuuuuuubb uuuuuuuuuuuuuuu15 例子:工作 贝塔月 1.52 uuuuuuuuuaa uuuuuuuuuuuuuuuuuuuuuuuuuuu2 1.54______________3 示例:合并: 贝塔月 1.52 2 现在我想使用以下关系合并这两个表 如果月份在第1季度,则必须使用第0季度的数据,因此如果我有一个日期为1996年6月2日的观察结果,则必须将第1季度的TVOL置于该观察结果之后 类似于如果月份=季度,我使用数据季度i-1 此外,由于TVOL是每季度测量的,我必须每月输入一次,我必须取平均值,因此TVOL/3应作为一个变量添加Time 在SAS中合并具有2个不同时间变量的数据集,time,merge,dataset,Time,Merge,Dataset,嘿,伙计们 对于那些经常浏览这个网站的人,很抱歉已经有了另一个问题,但是我自己解决了最后一个问题 我在合并数据集方面还有另一个问题,似乎在数据集中计算时间是一个真正的难题。我成功地在以前的数据集中合并了几个月,但似乎我有一个最终的数据集,其中只有季度作为时间计数变量。所以,我所有的普通数据库都以1-xxx月为时间指标,而这个数据库以季度为时间指标 我仍然希望将最后一个数据库的变量(我们称之为TVOL)添加到我的工作数据库中 快速总结 季度:第0季度=1996年1月至1996年3月 月份:第0个月
谢谢 好的,我解决了我的问题
data test;
set test;
Quarter=intck('qtr','01apr96'd,recdats);
put _all_;
run;
proc sort data=test;
by ticker quarter;
run;
proc sort data=wtvol;
by ticker quarter;
run;
data test;
merge test(in=a) wtvol(in=b);
by ticker quarter;
frommerg=a;
fromwtvol=b;
run;
data test;
set test;
if frommerg=0 then delete;
run;
data test;
set test;
if fromwtvol = 0 then delete;
run;
data test;
set test;
drop frommerg fromwtvol;
run;
我在我的基本数据集中创建了一个季度变量,并基于季度和股票代码合并了这两个集合