【技术实现步骤摘要】
一种转换执行SAS语言的方法、装置及应用
[0001]本申请涉及代码解析领域,特别是涉及一种转换执行
SAS
语言的方法
、
装置及应用
。
技术介绍
[0002]科研工作离不开高效的数据统计
。
不管是理工科还是文科,皆是如此
。
高效的统计是开展高质量科研工作与写作优质论文的重要依托
。SAS
软件
(
全称
STATISTICAL ANALYSIS SYSTEM
,简称
SAS)
,乃是科研统计分析中一款非常主流的软件
。
[0003]然而美国
SAS
软件的源代码并不对外公开,而目前市面上暂无可兼容
SAS
代码的其他数据分析软件,导致若是需要使用
SAS
语言执行各类数据分析统计功能时,必须使用并依托于美国
SAS
软件
。
而其他开源的数据统计分析软件,比如
Python/R
,对海量数据处理时存在耗时久
、
占有内存大
、
运行效率低等致命问题
。
[0004]综上所述,亟需一种可对
SAS
语言进行转换执行并实现自由编译
SAS
语言的方案以适配于海量数据统计分析需求
。
技术实现思路
[0005]本申请实施例提供了一种转换执行
SAS
语 ...
【技术保护点】
【技术特征摘要】
1.
一种转换执行
SAS
代码的方法,其特征在于,包括以下步骤:获取
SAS
语言表示的待运行
SAS
代码,构建待运行代码库;识别所述待运行
SAS
代码的字符串以获取不同词类的关键词以及宏代码字段,标记所述关键词的词类得到分词结果,其中所述词类至少包括功能词;将所述分词结果按照所述待运行
SAS
代码的代码顺序逐步放入所述待运行代码库,其中将位于两个所述宏代码字段之间的宏指令代码展开后存入待运行代码库;每当所述待运行代码库中组成单句代码时,获取单句代码的运行方式,且当识别到所述待运行代码库中再次出现相同功能词的关键词时,执行两个相同功能词的关键词之间的单句代码组成的代码段,并在执行完毕后清除已执行的代码段
。2.
根据权利要求1所述的一种
SAS
代码解析方法,其特征在于,在“对所述待运行
SAS
代码进行分词获得分词结果”步骤中,构建宏临时库,所述宏临时库用来存储两个所述宏代码字段之间的宏指令代码,当在所述分词结果中遇到%
macro
和%
mend
时,将%
macro
和%
mend
之间的宏指令代码内容存入所述宏临时库中
。3.
根据权利要求1所述的一种
SAS
代码解析方法,其特征在于,在“每当所述待运行代码库中组成单句代码时,获取单句代码的运行方式”步骤中,以分号对所述待运行代码库中的代码进行逐句切分得到单句代码,并分析每一单句代码的含义从而得到每一单句代码的运行方式
。4.
根据权利要求2所述的一种
SAS
代码解析方法,其特征在于,在“将所述分词结果按照所述待运行
SAS
代码的代码顺序逐步放入所述待运行代码库,其中将位于两个所述宏代码字段之间的宏指令代码展开后存入待运行代码库”步骤中,若遇到
word macro
宏指令,则在所述宏临时库中获取与所述
word macro
宏指令对应的宏指令代码,并将所述宏指令代码展开放入所述待运行代码库
。5.
根据权利要求1所述的一种
SAS
代码解析方法,其特征在于,在“当识别到所述待运行代码库中再次出现相同功能词的关键词时,执行两个相同功能词的关键词之间的单句代码组成的代码段”步骤中,所述相同功能词的关键词包括但不限于:定...
【专利技术属性】
技术研发人员:吴思榕,沈绍良,
申请(专利权)人:杭州启维软件有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。