arrays - 按组复制 SAS 中的值
问题描述
我有一个包含测量值和收集它的特定日期的数据集。我想在几天之间复制这些值,直到最后一个测量日。例如,这里是复制前的数据:
Measurement Day
Subject1 .85 -1
Subject1 .86 1
Subject1 .91 7
Subject1 .83 9
Subject2 .77 0
Subject2 .82 5
Subject2 .86 12
我想修改上面的数据集,如下所示:
Measurement Day
Subject1 .85 -1
Subject1 .85 0
Subject1 .86 1
Subject1 .86 2
Subject1 .86 3
Subject1 .86 4
Subject1 .86 5
Subject1 .86 6
Subject1 .91 7
Subject1 .91 8
Subject1 .83 9
Subject2 .77 0
Subject2 .77 1
Subject2 .77 2
Subject2 .77 3
Subject2 .77 4
Subject2 .82 5
Subject2 .82 6
Subject2 .82 7
Subject2 .82 8
Subject2 .82 9
Subject2 .82 10
Subject2 .82 11
Subject2 .86 12
解决方案
by
您可以通过将合并的数据偏移一行并省略该语句来进行“前瞻合并” ;
(假设您的数据按主题和日期排序)
数据合并1; 合并有 有 (rename=(day=nextday subject=nextsubject) drop=measurement firstobs=2) ; 如果 subject = nextsubject 然后 _day = day to nextday - 1 ; 输出 ; 结尾 ; 否则做; _day = 天; 输出 ; 结尾 ; drop day nextday next 主题; 重命名_day =天; 跑 ;
推荐阅读
- puppeteer - Puppeteer:在页面请求中获取正确的框架元素
- svg - Flutter SVG 仅在热重启后渲染
- python - 当你有很多变量时如何进行智能数据分析
- python - Python - 找不到时更改寻求的字典键
- docker - 用于 docker 图像的 Skopeo 工具 - 重新标记
- typescript - Typescript - 键入一个函数,该函数接受一个字符串数组并以字符串作为键创建输出
- c# - 如何使用c#中的程序检查堆栈内存的大小
- c# - 没有文件夹命名空间时在 MailKit 中打开邮件文件夹
- ruby-on-rails - 使用 RSPEC 测试环境相关路由
- android - Gradle 多模块依赖 - 一起使用 api 和 testImplementation