尝试计算 SAS 中后续预约之间的时间

问题描述 投票:0回答:1

我正在使用一个数据集,每个 ID 有多个访问日期。我正在尝试计算每次后续预约之间的时间(访问 1 与访问 2、访问 2 与访问 3 等)。

我的数据目前看起来像这样

data test;
input ID visit_dt :mmddyy10.;
format visit_dt mmddyy10.;
datalines;
1 06-14-2021
1 10-18-2021
1 12-16-2021
1 01-29-2022
2 07-17-2021
2 11-22-2021
2 12-23-2021
2 02-06-2022
;
run;

我正在寻找创建一个变量来告诉两次访问之间的天数(例如:上述数据的第二次观察将在变量中列出 6 月 14 日到 10 月 18 日之间的 126 天)

如有任何帮助,我们将不胜感激!提前谢谢你

date sas
1个回答
0
投票

使用

BY <var>
语句、自动变量
FIRST.<var>
DIF
函数。

示例:

DIF
函数计算变量的当前值与变量先前值之间的差。

data want ;
  set have ;
  by id ;
  daysSincePrior = DIF(visit_dt) ;
  if first.id then daysSincePrior = .; 
run ;
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.