base SAS programming学习笔记(functions)

1.SAS function 分类:

计算描述统计量的函数:

举例如下:avgscore=mean(exam1,exam2,exam3)

2.function 基本格式

function-name(argument1,argument2,......<argumentn>)

argument可以如下:变量名;常数,表达式(192/5,mean(22,24,26));变量列表(variable lists)或向量(arrays),只要前面有OF 即可。

如下:

mean(x1,x2,x3) 或者 mean(of x1-x3)

mean(of newarray{*})

mean(x1-x3),由于前面没有OF ,sas会计算X1减去X3的均值

3.INPUT 函数和PUT函数

        INPUT函数将字符变量转换成数值变量,基本格式如下:

        input(source,informat);

        source:可以是字符变量,常值,表达式可以转成数值;informat可以是数据的读入格式,即SAS存储的。

        PUT函数将数值变量转成数值变量,基本格式如下:

        put(source,format),此处用的是format即呈现给用户的格式,该format必须适用于source;source可以是数值变量、常值、表达式。put函数返回得字符宽度则为FORMAT格式的宽度。

4.DATE或DATETIME函数处理

        SAS存储日期以1960/01/01为起点计算日期,单位天,SAS存吃日期时间以1960/01/01:00:00:00计算时间,单位秒。所以在SAS存储是以数值形式存在,可以进行数学运算;SAS日期或时间函数如下:

WEEKDAY返回日期对应实际情况是:

a.INTCK (“interval”,from,to):(计算日期间隔)

interval是间隔标识,可以是字符常值或变量,取值如下:

from是计算间隔的开始时间,to是计算间隔的结束时间。值得注意的是间隔计算的是整数间隔,而比如计算MONTH 间隔,则计算从开始日期起到结束日期间间隔多少个 1号(DAY 1);WEEK间隔是两个日期间隔有多少个星期日;年份间隔(YEAR)是两个日期间隔有多少个1月1日。开始日期含有不算。

"ddmmmyy"d或者"ddmmmyyyy"d的形式就是日期常值。

b.INTNX("interval",start-from,increment<,alignment>):

计算当前日期增加指定间隔日期后的时间

INTERVAL取值同INTCK函数,见上节。

start-from 表示开始日期.

increment,表示增加的间隔数,为正数从开始日期往未来加,为负数从开始日期往过去加;

alignment,非必须,取值有B(开始),M(中间),E(结束),S(与开始日期同一天)

c.DATIF(start_date,end_date,basis)/YRDIF(start_date,end_date,basis)

分别计算两个日期的之间的天数和年数

BASIS取值如下:'30/360','ACT/ACT','ACT/360','ACT/365';

5.字符函数

a.SCAN 函数:scan(argument,n,delimiters)

argument:字符变量或相关表达式

n规定返回第几个单词

delimiters:分隔符,可以是多个不同的分隔符

scan函数默认的分隔符有:空格< ( + | & ! $ * ) ; ^ - / , %

如:scan(name,1,"  ,")

举例如下:

结果如下:

b.SUBSTR函数:提取或替换部分字符,substr(argument,positon,<n>)

argument:字符变量或表达式

position: 开始读取字符的位置

n:是提取字符的长度,如果n缺失,则剩余的所有的字符都读取;

提取字符举例如下:

替换字符举例如下:

c.trim函数:字符变量结尾的空格字符,trim(argument)

arugment:字符变量或者字符表达式

值得注意的是TRIM不会改变字符在数据集里面的存在形式,比如将一个字符变量用trim 删除空格后赋给新的变量,只要新的变量长度大于字符长度则会存在空格

d.catx:删除字符变量前面和尾部的空格,同时用分隔符将字符变量连接起来

catx(separator,string1<,.......stringn>)

separator:分隔符;

string:字符变量

举例如下:

d.index 函数:在字符变量中找到指导字符值的位置,返回找到字符值初始位置;未找到返回0。

index(source,excerpt)

source:是字符变量或者表达式

excerpt:是需要查找的字符值,用引号引用

index(job,"word processing")

e.find 函数:同index函数类似,在字符变量或字符串找到指定字符的位置,返回找到字符值的初始位置;未找到返回0;

find(string,substring<,modifiers><,startpos>)

string:字符变量或表达式或字符串,

substring:是待查找的字符串

modifiers:非必须,修饰符,取值有"i" 查找中忽略大小写,如果不定义的话在要求精准匹配,取值为"t”用法同trim函数删除string和substring的结尾空格,可以同时使用多个修饰符  用一组引号引用起来即可

startpos:非必须,其绝对值为找寻字符串的起始位置,如果为正数则从该位置从左往右,如果为负数则从该位置从右往左,默认从左往右。

 f.upcase(argument):字符大写;lowercase(argument):字符小写。

  propcase(argument<,delimiters>):将字符变量分隔符后首字母大写。

argument:可以是字符变量或者表达式

delimiters:分隔符,默认是空格,用引号引用,默认的分隔符有:空格,斜杠(/),括号,连字符(-),点值(.)和tab,用户自定义分隔符号默认的分隔符无用。

g.tranwrd(source,target,replacement):将字符替换成指定字符

source:字符变量或字符串

target:待替换的字符串,可以是字符变量

replacement:需要替换成的字符串,可以是字符变量

举例如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/793756.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

redis学习(009 实战:黑马点评:缓存穿透、缓存雪崩 、缓存击穿)

黑马程序员Redis入门到实战教程&#xff0c;深度透析redis底层原理redis分布式锁企业解决方案黑马点评实战项目 总时长 42:48:00 共175P 此文章包含第40p-第p45的内容 文章目录 缓存穿透解决方案缓存空对象布隆过滤 解决方案实现缓存穿透总结 缓存雪崩解决方案 缓存击穿解决方…

Elasticsearch 更新指定字段

Elasticsearch 更新指定字段 准备条件查询数据更新指定字段更新子级字段 准备条件 以下查询操作都基于索引crm_clue来操作&#xff0c;索引已经建过了&#xff0c;本文主要讲Elasticsearch更新指定字段语句&#xff0c;下面开始写更新语句执行更新啦&#xff01; 查询数据 查…

小阿轩yx-NoSQL 之 Redis 配置与优化

小阿轩yx-NoSQL 之 Redis 配置与优化 Redis 数据库介绍 是一个非关系型数据库 关系数据库与非关系型数据库 按照数据库结构划分的 关系型数据库 是一个结构化的数据库&#xff0c;创建在关系模型基础上&#xff0c;一般面向于记录借助集合代数等数学概念和方法处理数据库…

边缘计算网关:一种高效安全的工业物联网解决方案-天拓四方

在工业物联网&#xff08;IIoT&#xff09;领域&#xff0c;数据处理和实时响应的需求日益增长&#xff0c;尤其是在智能制造、远程监控和预测性维护等场景中。边缘计算网关作为一种前端数据处理和决策设备&#xff0c;正逐渐成为满足这些需求的理想解决方案。 在一个大型制造…

音频语言学习领域数据集现状、分类及评估

Audio Language Learning (Audio-Text Learning) 是一个新兴的研究领域&#xff0c;专注于处理、理解和描述声音。它的发展动力是机器学习技术的进步以及越来越多地将声音与其相应的文本描述相结合的数据集的可用性。 Audio Language Models (ALMs) 是这个领域的关键技术&#…

部署大语言模型并对话

在阿里云的https://developer.aliyun.com/adc/scenario/b105013328814fe995c0f091d708d67d 选择函数计算 设置服务器配置 复制公网地址 这个地址不能直接 在返回应用&#xff0c;创建应用LLM 对话页面 Open WebUI 点击下面的创建应用 部署完成后访问域名 打开访问地址

欧科云链研究院:坎昆升级后,Layer2变得更好了吗?

本文由欧科云链研究院OKG Research联合PANews出品&#xff1a;以数据为导向&#xff0c;洞察真实的链上世界。 作者&#xff5c;Jason Jiang, OKG Research 坎昆升级后&#xff0c;以太坊L2的交易费用降低明显且吞吐量有所提升&#xff0c;但整体生态并没有迎来想象中的繁荣景…

0基础学会在亚马逊云科技AWS上利用SageMaker、PEFT和LoRA高效微调AI大语言模型(含具体教程和代码)

项目简介&#xff1a; 小李哥今天将继续介绍亚马逊云科技AWS云计算平台上的前沿前沿AI技术解决方案&#xff0c;帮助大家快速了解国际上最热门的云计算平台亚马逊云科技AWS上的AI软甲开发最佳实践&#xff0c;并应用到自己的日常工作里。本次介绍的是如何在Amazon SageMaker上…

【漏洞复现】Splunk Enterprise for Windows 任意文件读取漏洞 CVE-2024-36991

声明&#xff1a;本文档或演示材料仅用于教育和教学目的。如果任何个人或组织利用本文档中的信息进行非法活动&#xff0c;将与本文档的作者或发布者无关。 一、漏洞描述 Splunk Enterprise 是一款强大的机器数据管理和分析平台&#xff0c;广泛应用于企业中&#xff0c;用于实…

应用最优化方法及MATLAB实现——第3章代码实现

一、概述 在阅读最优方法及MATLAB实现后&#xff0c;想着将书中提供的代码自己手敲一遍&#xff0c;来提高自己对书中内容理解程度&#xff0c;巩固一下。 这部分内容主要针对第3章的内容&#xff0c;将其所有代码实现均手敲一遍&#xff0c;中间部分代码自己根据其公式有些许的…

百度安全大模型智能体实践入选信通院“安全守卫者计划”优秀案例

7月3日&#xff0c;由全球数字经济大会组委会主办&#xff0c;中国信息通信研究院&#xff08;以下简称中国信通院&#xff09;与中国通信标准化协会联合承办的2024全球数字经济大会“云和软件安全论坛暨第二届SecGo云和软件安全大会”在北京召开。本届论坛聚焦云和软件安全最新…

从基础到进阶:无线局域网技术解析

在局域网刚刚问世后的一段时间内&#xff0c;无线局域网的发展比较缓慢&#xff0c;其原因是价格贵、数据传输速率低、安全性较差。但自20世纪80年代末以来&#xff0c;由于人们工作和生活节奏的加快&#xff0c;以及移动通信技术的飞速发展&#xff0c;无线局域网逐步进入市场…

今年2024,而那一年是1984

那一年&#xff0c;是1984 对于经历了改革开放洪流的国人来说&#xff0c;1984年似乎没有什么特别。 可是这一年&#xff0c;又确确实实非同寻常&#xff0c;许多后来的巨大变迁&#xff0c;在这一年埋下了伏笔…… 文学创作: 余华、莫言等作家在这一年迎来了自己的创作高峰…

学习通er图和项目思路

ER图 项目构思&#xff1a; 用户功能&#xff1a; 主要功能逻辑&#xff1a;

Web3知识图谱,一篇读完

这张图展示了区块链生态系统的架构和主要组件。以下是对图中内容的概括总结&#xff1a; 基础层&#xff1a; 底层基础设施&#xff1a;包括光纤网络、P2P网络、非对称加密、哈希算法、默克尔树和随机数生成。共识机制&#xff1a; PoW&#xff08;工作量证明&#xff09;: 比特…

Elasticsearch:介绍 retrievers - 搜索一切事物

作者&#xff1a;来自 Elastic Jeff Vestal, Jack Conradson 在 8.14 中&#xff0c;Elastic 在 Elasticsearch 中引入了一项名为 “retrievers - 检索器” 的新搜索功能。继续阅读以了解它们的简单性和效率&#xff0c;以及它们如何增强你的搜索操作。 检索器是 Elasticsearc…

MyBatis框架学习笔记(三):MyBatis重要文件详解:配置文件与映射文件

1 mybatis-config.xml-配置文件详解 1.1 说明 &#xff08;1&#xff09;mybatis 的核心配置文件(mybatis-config.xml)&#xff0c;比如配置 jdbc 连接信息&#xff0c;注册 mapper 等等都是在这个文件中进行配置,我们需要对这个配置文件有详细的了解 &#xff08;2&#x…

如何做好漏洞扫描工作提高网络安全

在数字化浪潮席卷全球的今天&#xff0c;企业数字化转型已成为提升竞争力、实现可持续发展的关键路径。然而&#xff0c;这一转型过程并非坦途&#xff0c;其中网络安全问题如同暗礁般潜伏&#xff0c;稍有不慎便可能引发数据泄露、服务中断乃至品牌信誉受损等严重后果。因此&a…

【Linux】磁盘性能压测-FIO工具

一、FIO工具介绍 fio&#xff08;Flexible I/O Tester&#xff09;是一个用于评估计算机系统中 I/O 性能的强大工具。 官网&#xff1a;fio - fio - Flexible IO Tester 注意事项&#xff01; 1、不要指定文件系统名称&#xff08;如/dev/mapper/centos-root)&#xff0c;避…

socket编程(2) -- TCP通信

TCP通信 2. 使用 Socket 进行TCP通信2.1 socket相关函数介绍socket()bind()listen()accept()connect()2.2 TCP协议 C/S 模型基础通信代码 最后 2. 使用 Socket 进行TCP通信 Socket通信流程图如下&#xff1a; 这里服务器段listen是监听socket套接字的监听文件描述符。如果客户…