sas相关内容

在SAS中将字符变量转换为数字

我正在 SAS 中创建字符变量的数字版本.我正在使用best32.数字格式以及输入语句,因为我不想丢失任何数据. 以下是 SAS 丢弃数据的示例,我不清楚原因. DATA 试验;X='1264263.336532';Y=输入(X,BEST32.);把Y;跑; Y 只是 1264263.3365 而不是 X.我不确定为什么会这样. 解决方案 SAS 在默认的 BEST12 中显示 ..
发布时间:2022-01-08 17:46:35 其他开发

在 SAS 中添加一条记录?

我发现了如何使用 proc append 将表附加到基础.我想知道是否有一种更简单的方法(不需要创建临时保存表)来添加一条记录?我找到的所有解决方案都需要几行,我想知道是否有更简单的东西,比如我缺少的“删除"命令? 解决方案 您可以使用带有 modify 语句的数据步骤来插入额外的行.任何其他类型的数据步骤都涉及创建临时文件并替换原始文件,这在您对大型数据集进行小幅更改时是不可取的. 数 ..
发布时间:2022-01-08 17:46:27 其他开发

哈希返回整个表 - SAS

我在数据步骤中有一个使用哈希的查询,如下所示: 如果 _n_ = 1 则执行;如果 0 那么设置表A;声明哈希 A(数据集:“TableA");A.definekey("UniqueKeyA");A.定义数据(“DataA");A.definedone();结尾;如果 _n_ = 1 则执行;如果 0 那么设置表B;声明哈希 B(数据集:“TableB");B.definekey("Unique ..
发布时间:2022-01-08 17:45:44 其他开发

如何在没有特殊字符的情况下将字符串传递给宏 sas

我在 sas 中写了这个宏来获取一些文件的一些信息: %macro info_1(cmd);文件名 dirList 管道 &cmd.;数据work.dirList;infile dirList 长度=reclen;输入文件 $variing200.重新考虑;权限=扫描(文件,1,“");如果输入(扫描(文件,2,“"),8.)= 1;用户=扫描(文件,3,“");组=扫描(文件,4,“");fi ..
发布时间:2022-01-08 17:45:36 其他开发

SQL - 不存在具有数百万条记录的查询

我正在尝试使用以下 SQL 查询(在 SAS 中)从 pool1 中查找 pool2 中不存在的任何记录.Pool1 有 11,000,000 条记录,pool2 有 700,000 条记录.这是我遇到问题的地方.我让查询运行了 16 个小时,但离完成还差得很远.有没有更有效的方法(在 SQL 或 SAS 中)来实现我需要做的事情? PROC SQL;将表全部创建为选择 A.ID从 POOL1 ..
发布时间:2022-01-08 17:45:28 其他开发

数据步骤中的文件语句以导出逗号分隔的文本文件

问题:假设我不知道变量名和变量数.或者想象有太多变量我无法编写 put 语句. 以下情况是我知道有 3 个变量 数据_null_;安排会议;文件 'C:\Users\Desktop\meeting2.txt' dlm=',';放置区域 mtg sendmail;跑; 我尝试使用 put _all_;输出是: region=N mtg=24NOV1999 sendmail=10OCT19 ..
发布时间:2022-01-08 17:45:20 其他开发

SAS Hash Tables:有没有办法在不同的键上查找/加入或有可选的键

我经常处理一些键不完美的数据,我需要加入来自不同来源的数据,我想继续使用哈希对象以获得速度优势,但是当我使用大量数据时,我可以遇到崩溃(内存限制). 简化的概述是我有 2 个不同的键,它们都是唯一的,但不是每条记录都存在,我们将它们称为 Key1 和 Key2. 我目前的解决方案不是很优雅(但它有效)是执行以下操作: 如果 _N_ = 1 则执行;声明哈希 h1(数据集:“DataS ..
发布时间:2022-01-08 17:44:51 其他开发

在 SAS 中自动扫描和搜索表/对象名称

好的,我将从问题开始:我每周都会创建产品表,其命名格式为: products_20130701产品_20130708... 我正在尝试自动执行一些广告系列分析,这样我就不必每周手动更改代码中的表名称来使用我的广告系列最长结束日期之后的第一个产品表. 例如 %put &max_enddate.;/*20130603*/ 我 6 月份的产品表是: products_20130602*产 ..
发布时间:2022-01-08 17:44:43 其他开发

在新实例中打开 SAS 程序

我正在尝试找出一种方法,在默认情况下单击时在增强编辑器的新实例中打开 SAS 程序. 这个问题已经问过,但没有运气. 这篇论文描述了程序的打开方式使用增强的编辑器.完整的命令是: "C:\PROGRA~1\SASHome\SASFOU~1\9.3\core\sasexe\SASOACT.EXE" action=Open数据类型=SASFile 文件名=“%1" progid=SAS. ..
发布时间:2022-01-08 17:44:17 其他开发

SAS 中的大字符字段大小

我正在尝试通过 SAS ODBC 直通从 MySQL 表中导入一个大型 blob 字段.该字段大于 SAS 中允许的最大长度.根据 SAS 9.2 文档,字符类型字段的最大长度为 32k.有没有人有在 SAS 中存储大字符字段的经验?除了将其分解为更小的子字符串之外,还有什么建议吗? 谢谢抢 解决方案 如果您确实需要对所有 32K 数据进行操作,我会将其导入多个列并使用数组随时迭代这 ..
发布时间:2022-01-08 17:43:54 数据库

SAS循环遍历宏变量列表

首先,我是新手,如果这不是一个好问题,我深表歉意.我搜索但没有找到类似的东西.我不确定我的方法是否正确,因此我们将不胜感激. 我正在为具有学期的学校处理数据集,例如 2017SP 是 2017 年春季,2017SU 是 2017 年夏季等等. 我有以下程序,我在顶部设置了一个宏变量,然后使用它从各种库和数据集中提取术语.请注意,我有几个数据步骤,只需要运行整个程序超过 5 次. ..
发布时间:2022-01-08 17:43:46 其他开发

元数据表的 SAS 文件夹路径

我想知道是否有人知道如何检索元数据表的 sas 文件夹路径? 我想列出位于元数据上的每个表的文件夹路径. 例子: Table FactPortfolio 在管理控制台中位于以下文件夹结构下:商业-->瑞典-->投资组合-->资源-->表格 在 sas 的元数据浏览器中,如果单击表和树以及父树直到到达顶层层次结构,我可以找到文件夹路径.但是,我想使用 SAS 中的元数据数据步 ..
发布时间:2022-01-08 17:43:37 其他开发

pyspark中的probnorm函数等效

PROBNORM:解释 SAS 中的 PROBNORM 函数返回标准正态分布的观测值小于或等于 x 的概率. pyspark中有没有等价的功能? 解决方案 恐怕PySpark中没有这样的实现方法. 但是,您可以利用 Pandas UDF 使用基本的 Python 包定义您自己的自定义函数!这里我们将使用 scipy.stats.norm 模块从标准正态分布中获取累积概率. ..
发布时间:2022-01-08 17:43:27 Python

加载包 SASxport 时出错:对象 'label<-.data.frame' 未由 'namespace:Hmisc' 导出

我正在尝试将 XPT 格式的数据读入 R(该格式可以在例如 NHANES 数据).我发现有两个函数可以这样做: 库(“Hmisc")sasxport.get("C:/path/file.XPT") 和 库(“SASxport")read.xport("C:/path/file.XPT") sasxport.get 工作正常,所以我基本上没问题,但仍然好奇地理解(并解决)以下错误:安装 SA ..
发布时间:2022-01-08 17:43:14 其他开发

在 sas 数据集中重新排列变量 - 按字母顺序

我有 500 列数据集,我想按字母顺序重新排列所有变量.除了在 set 语句之前使用 retain 语句之外,我怎么能以其他方式做到这一点? 解决方案 可以动态生成变量名列表,使用PROC SQL创建新的数据集. 过程 sql ;选择名称到 :VARLIST 中,以 ', ' 分隔来自dictionary.columns其中 libname = 'SASHELP'和 memname = ..
发布时间:2022-01-08 17:43:06 其他开发

VBA - 打开excel,查找和替换,删除行,另存为csv

我正在尝试用 VBA 编写一个程序,以便我可以从 SAS(一种统计编程软件)远程操作一个 excel 文件.我希望程序完成以下任务: 打开指定的excel文件 查找标题行中的所有空白并将其替换为空(例如,“测试名称"变为“测试名称") 如果行中的第一个单元格(即 A2)为空白,则删除第二行 将文件另存为 csv 我不了解 VBA,只是稍微涉足它,了解一些其他编程语言,并尝试将其拼 ..
发布时间:2022-01-08 17:43:00 其他开发

从单个数据集创建多个 SAS 宏变量列表

由于宏变量值的长度不能超过 (65534) 的最大长度,因此我无法为所有观察结果创建单个宏变量.我想创建一个宏来遍历我的数据集以生成几个 numeric 列表,我可以将这些列表传递给 proc sql 中的 where 语句. 而不是这个: *proc sql noprint;选择 ID 到 :ParaList 中,用 ',' 分隔来自 work.ID_LIST(**firstobs=1 ..
发布时间:2022-01-08 17:42:44 其他开发

现场功能的 SAS 问题

所以,我正在对 SAS 例程进行一些“逆向工程" - 将其带到 SQL 和 Pentaho. 我尝试直接浏览它,但我注意到很多冗余过程,所以我开始在思维导图中映射所有内容,以识别所有冗余并在对 SQL 执行任何操作之前对其进行处理. 我偶然发现了以下几行: 使用table1全部读入A使用表 2全部读入 B字段A = nrow(B);场B = B[,n:场A];场C = 2.33*sq ..
发布时间:2022-01-08 17:42:40 其他开发