问题标签 [sas-iml]
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.
r - 从 SAS 中加载的文件中调用 R 函数
我有一个 .R 文件,其中存储了一些函数。FunctionName <- function(x) 中的函数。我正在尝试编写一个引用此 R 文件的 SAS 代码,并且可以调用和运行 R 文件中的一个函数。这是我的代码:
这是我的 R 文件中的函数之一:
本质上,这个 R 文件中的 R 函数将日期作为参数,并使用此参数来决定如何对某些数据文件进行排序。当我运行 SAS 代码时,我得到:
我尝试使用 SAS MACRO 命令,但这让我更加困惑。我想我清楚地解释了我想做的事情。我了解提交 /R 允许您在该 SAS 代码块中运行 R 代码,但我实际上是在尝试访问外部 .R 文件的功能。我一直在用谷歌搜索拉我的头发,我想做的事情似乎没有任何意义。我已经更改了函数/变量/文件位置的名称,但它仍然应该有意义。谢谢。
sas - 如何为 dataset1 中包含的每个人找到 dataset2 中的平均值,这些人具有唯一的开始日期和结束日期?
我希望根据每个人的独特开始和结束日期找到每个人的 valueZ 平均值。Exposure X 对于每个位置的每一天都有许多值,因此(实际上有 23 个位置,每个站点有超过 300 个值和日期):
数据集 1 中的个人通过位置链接到数据集 2,如下所示:
因此,我想根据每个人从 start_date 到 end_date 的 dataset2 中指示的位置得出 valueZ 的平均值。有人可以帮忙吗!
matrix - 将矩阵转换为 SAS 中的 3 列表
我在使用 SAS 将矩阵转换为三列时遇到了麻烦。
这是使用 Excel 执行此操作的参考,您可以看到Convert matrix to 3-column table ('reverse pivot', 'unpivot', 'flatten', 'normalize')
我一直在谷歌,发现http://support.sas.com/resources/papers/proceedings13/319-2013.pdf做反向(<=)。
但我从未见过有人在做(=>)。
我知道我可以使用一些函数来获取所有行/列名称,方法是使用 SAS/SQL 和 SAS/IML 为每个成对单元格分配值。
但是,我想寻找任何可以帮助我更清晰易懂地完成它的功能。
请注意,SAS 是我被允许使用的唯一语言...抱歉,我不能使用 Excel 来执行此操作...
loops - 如何在多个数据集上执行相同的 SAS 过程
我整理了一个 proc IML 代码,该代码允许从特定数据集中提取数据 - 存储在工作目录中 - 并执行一个简单的方程式。然后将结果存储在一个新的数据集中。
我现在想将此过程应用于存储在我的 SAS 工作文件夹中的多个数据集,并将结果合并到新文件夹中。数据集编码为 B1、B2、B3……我认为,需要一个具有循环功能的 SAS 宏,但我在这方面的知识非常有限。我将不胜感激任何帮助。
sas - 在矩阵中卷起组
这是我拥有的数据,我使用 proc tabulate 来呈现它在 excel 中的呈现方式,并使可视化更容易。目标是确保组严格低于对角线(我知道它是一个矩形,(1,1)(2,2)...(7,7)“对角线”)卷起列直到它碰到对角线或使组大小至少为 75。
我已经使用 if/thens 重新组合某些数据值,但我需要一种通用方法来为其他集合执行此操作。提前致谢
期望的结果
sas - 如何在sas中将每一行与另一个矩阵元素的每一行相乘?
我有一个行矩阵(向量)A和另一个方阵B。如何使用proc iml或其他方式将矩阵B的每一行与SAS中的行矩阵A相乘?
比方说
a = {1 2 3}
b =
{2 3 4
1 5 3
5 9 10}
我的输出 c 将是:
{2 6 12
1 10 9
5 18 30}
谢谢!
sas - 基于参考表创建矩阵和单独的数据表 sas iml
我有一个参数化表,其中提到“矩阵 1”的第 (i,j) 个元素是否为零、行和的残差或必须从数据表中读取。我还有一个数据表,其中包含不同段的所有值。如何构建矩阵?
例如,假设“param_table”是参数化表:
“表 1”是包含先前表中的值和引用的实际数据:
如何为表 1 中的每一行(每个键集)创建具有这些规则的矩阵?例如,“table1”的第 1 行的矩阵将是:
第 (1,1) 和 (3,3) 元素是行残差,因此是 (1 - 行其余部分的总和),而 (1,2) 元素是 0:
我已经为包含引用(列名)的文件“param_table”添加了数据步骤,如果它是零或行残差。还添加了包含实际值的“table1”文件。对于“table1”的每一行,我们应该有一个基于 param_table 中提到的规则的矩阵。
谢谢!