问题标签 [sas-macro]

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 投票
2 回答
543 浏览

sas - 创建一系列以升序数值命名的全局宏变量

我构建了以下宏,其中代码遍历数字 1 到 82,并proc format在创建该宏变量时分配语句中定义的格式:

在这种情况下,宏变量&myvar.可以正常工作,并按照我的意愿按升序分配值。

然而,这个变量被赋予了一个新值 82 次,并且在过程结束时它具有最后一次迭代的值。

我试图用这条线做的%let myvar_&u. = &myvar.;是然后创建 82 个单独的全局变量,这些变量将被调用&myvar_1.&myvar_82.每个变量都有不同的值。

当日志运行时出现以下警告

看来最后一个变量,我想要的那个没有被正确分配,我不知道为什么。

有人对问题所在有任何建议吗?

谢谢

0 投票
1 回答
104 浏览

format - 如何根据数据值应用不同的格式

我正在修改 SAS 宏中的数据步骤。目前使用单一格式为整个数据集创建新字段。我正在尝试将其修改为将在数据集的不同子集上使用不同格式的位置。(我有一个字段指示该行属于哪个子集。)

我可以用一堆 if 语句来做到这一点,但是如果将来类别的数量发生变化,那将需要更改。我想我可以通过使用 call symput 和 resolve 来实现我想要的,但我不确定它的语法是什么。我可以在不使用 if 语句的情况下实现这一点吗?

0 投票
1 回答
531 浏览

sas - sas 元数据库的凭据 - 用户 ID

我在这里遇到需要 SAS 元数据库的用户 ID 的情况。我不想列出访问元数据的用户。所以, 从 SAS 元数据服务器获取用户 ID不是我查询的解决方案。

请帮忙

0 投票
1 回答
445 浏览

unix - 在任何 sas 数据集中插入行的实用程序

我想创建一个 unix 实用程序将 1 行插入 sas 数据集。运行时,此 scipt 将要求用户为数据集中的每个变量插入值(最好告诉他变量的类型和长度)。然后它将使用 EXPORT 命令将这些值传递给 SAS,然后 SAS 将为这些变量创建宏变量并使用 'proc sql; insert into' 将值插入数据集中。

现在 raw_str 将变量的类型和长度与跟踪数据的相同

然后我想将此列表传递给 unix,从那里我将要求用户输入这些变量的值,然后我将使用这些值附加到 tracking_data 中。

问题在于将值从 unix 传递到 sas 并为这些值创建宏变量

我还可以将变量的长度和类型传递给前端,告诉用户传递与 raw_str 数据集的类型和长度匹配的值

最后我可以使用 proc append 将其附加到原始数据中

0 投票
1 回答
167 浏览

sas - 无法解析宏

上面的代码是将治疗组中的受试者数量分配给宏观变量,并使用它来计算上面代码所示的百分比。写入的宏块在数据步 TOTAL 中没有得到解决,也没有引发警告或错误。

0 投票
3 回答
532 浏览

r - SAS 到 R 的合并转换

我目前正在将 SAS 宏转换为 R 代码。我在 R 上做了很多工作,但我对 SAS 比较陌生。我无法理解合并命令的 SAS 代码 -

我了解此命令将文件 A 加入自身 5 次。但我无法可视化输出。'index+1' 和 'if' 代表什么。此代码的 R 版本是什么?

0 投票
1 回答
7390 浏览

json - 读取 JSON 文件并将其保存在 SAS 数据集中

我正在尝试从 JSON 文件中读取数据并将值存储在 SAS 数据集中这是我的 JSON 文件test.json

现在我想要像简单的 SAS 数据集这样的输出,我可以在其中以表格形式获取。如果我使用 proc 打印数据集,它将如下所示:

这是我的方法,但没有得到正确的输出。

知道我是怎么做的吗???

0 投票
1 回答
5242 浏览

sas-macro - SAS - %if 表达式中的宏错误

我写了这段代码:

错误是:

错误:在表达式中找不到必需的运算符:&hoy = 14

但如果我输入 %let hoy = 14;,它就完美了!

0 投票
3 回答
7776 浏览

json - 在 SAS 宏中解析 JSON 对象

这是输入的 JSON 文件。它必须在 SAS 数据集中进行解析。

我希望 SAS 数据集中只有 Address 字段的输出,如下所示:

我尝试过单独的方式,但没有类似的输出。甚至尝试从PDF扫描...但无法获得所需的输出...

这是我的代码......和输出......

.lst文件中的输出

0 投票
1 回答
1376 浏览

json - 访问 SAS 中的 URL 并将数据存储在数据集和 JSON 文件中

我正在尝试访问 URL 并希望将数据存储到数据集并以 JSON 格式输出文件。

我只想获取 URL 数据并存储为 JSON 文件但我的问题有两个部分......

  1. 如果 url 响应数据已经是像 http://headers.jsontest.com这样的 json 格式,那么我只需使用file命令和put 带有json扩展名的命令
  2. 如果 url 响应数据html tags与任何其他 url 数据一样,那么它可以json被 SAS 解析或转换为格式

我试图获取假设http://www.google.comhttp://headers.jsontest.com .... 这是我的代码.....

这是我在执行代码后收到的带有错误消息的日志文件:错误:连接已超时..

任何想法如何摆脱这个......

READ_URL.txt作为一个空白文件

提前感谢您的任何帮助...