问题标签 [datastep]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
37 浏览

sas - SAS中的停滞数据步骤

我是一名 SAS 新手用户,正在尝试对具有 198 行和 1611 列的数据集运行数据步骤。我认为我在数据步骤中没有做任何特别精细的事情,但它永远不会完成。如果有人能指出我的代码中是否/哪里有问题,我将不胜感激。谢谢!

0 投票
3 回答
327 浏览

sas - 外部数据库上的 SAS/ACCESS 和数据步

我对 SAS/ACCESS 设施有以下担忧。

假设我们有一个外部数据库(即 Oracle),我们已将其分配给某个 libname。

接下来,我们对这个DB中的一张表做一个简单的操作,即

我的问题如下:

  1. 整个表table_old是否会从外部数据库拉到 SAS 服务器以处理数据?
  2. SAS/ACCESS 是否会将数据步骤转换为 DBMS 操作或 SQL,以便整个处理将在 SAS 之外执行?

文档不清楚。请参见第 62 页。

0 投票
1 回答
123 浏览

sas - 使用分隔符打印所有列 SAS

我正在尝试打印出一个分隔文件,而不必指定所有列。我可以接近,但数字列总是被引用:

foo.csv

我怎样才能实现:

或者:

0 投票
2 回答
3102 浏览

sas - 如何在 SAS 数据步骤中创建嵌入式超链接

案例是:目标 URL 例如“ https://stackoverflow.com/ ”。我有一个带有 ID 的数据集。如果我输入“ https://stackoverflow.com/ ”+“ID”,则它是最终的超链接,它通向最终的网页。

如何使用 URL 创建列表 id 超链接(数据步骤),其中每个单元格的名称都是“ID”(在 proc 打印之后),当我单击超链接时,它会将我指向“ https://stackoverflow.com /3453456 “谢谢!

这是我的代码:

但它伴随着错误

** 我确实像 Dompazz 所说的那样,结果如下:

在此处输入图像描述

在此处输入图像描述

0 投票
1 回答
166 浏览

sas - If else sas 数据步骤

我需要写逻辑

一切正常,但语句的第二部分(和 x=5)不起作用。

0 投票
0 回答
22 浏览

sas - SAS:循环遍历表,执行计数操作

SAS初学者在这里。

我有一张表格,计算发明人在其职业生涯中获得的专利数量。

我想添加一个名为“过去的发明”的变量,它计算所有发明人的专利。所以结果表将是......

如何使用 SAS 解决这个问题?

0 投票
2 回答
159 浏览

count - SAS Counting Occurrences 基于设定时间段内的多层

我正在尝试计算同一人在每个实例的 30 天内在同一个地方为一个项目计费四次或更多次的事件。例如,输入看起来像:

输出看起来像:

我尝试过类似的东西:

这给出了基于人和地点的计数,但不考虑时间。任何帮助或建议将不胜感激!谢谢

0 投票
3 回答
588 浏览

sas - 将 *most* 变量设置为缺失,同时保留少数几个变量的内容

我有一个这样的数据集(但有几百个变量):

我想保留 ID、b2 和 tre,但将其他所有内容设置为缺失。在这么小的数据集中,我可以轻松使用call missing (q1, g7, q3, zz, gl, az)- 但在具有更多变量的集合中,我实际上想说call missing (of _ALL_ *except ID, b2, tre*)

显然,SAS 无法读懂我的想法。我已经考虑过涉及另一个数据步骤或 proc sql 的解决方法,我将原始变量复制到新的 ds 并将它们合并回 post,但我正在尝试找到一个更优雅的解决方案。

0 投票
2 回答
36 浏览

sql - 最近 5 个 trns 中的特定事务数

我想写 sas 代码(proc-sql)。问题是如何创建变量 VP_Trans(在下表中)。下表是指客户在某个时期内的交易。我想根据他最近的 5 笔交易计算客户有多少 VP 交易。包括第 5 笔交易,例如客户 1 有 5 笔 VP 交易,这些交易是根据 1.2.-11.2 之间发生的交易计算得出的。

0 投票
2 回答
649 浏览

sas - SAS - 比较组内的观察值以选择值

我的 SAS 数据集中有 4 列,如下图所示。我需要按 ID 比较连续行的日期。对于每个 ID,如果同一 ID 的 Date2 出现在下一行的 Date1 之前,则保留账单金额。如果 Date2 出现在下一行的 Date1 之后,则删除账单金额。所以对于每个 ID,只保留 Date2 小于下一行 Date1 的账单。我已将结果集的外观放在底部。

在此处输入图像描述

结果集应如下所示
在此处输入图像描述