热度 105||
仅就个人的一点点经验,谈几点SAS在大型数据处理中应用的看法:
(1)数据整理过程中,尽可能的使用DATA步,而少用Proc SQL;因为同样的操作,个人感觉,使用data的效率(运行速度及其他)远远高于SQL语句。利用数据步的一些特殊选项和变量(OBS NOBS POINT END BY FIRST LAST MERGE MODIFY RETAIN OUTPUT)等,利用这些语句千变万化的应用,可以实现非常强大的数据整理功能。用这些语句的关键,是掌握SAS DATA步的编译原理,了解PDV的有关知识。
(2)使用好数据库的索引,SAS和其他数据库一样也可以建立索引,由于我们在处理小型数据集时,很少遇到速度的问题,可能对这个了解较少。使用索引可以大大提供一些数据查询等操作的速度。(当然,有利就有弊)。
(3)处理好“空间”和“时间”的问题:举例,如使用数据视图可以节省计算机的硬盘空间,但进行调用这个视图所花的时间要比物理性的数据集花的时间长。另一种情况,待分析数据集过于庞大时,我们又不可能把整个数据集读入,也不能太多的使用data步,产生大量临时数据。
(4)关于宏的使用:编写程序,思路和规划是非常重要的,做好整体的规划和思路和开发一个一样程序一样,只不过在SAS里不需要提供用户界面。通过使用宏,可以把代码进行切割,成为一个个独立的功能模块,每个模块实现固定的功能,即使不太懂SAS的用户也能方便调用,大大提供了程序的可读性(整体程序,不指程序内部)。
手机版|会员|至尊|接种|公卫人 ( 沪ICP备06060850号-3 )
GMT+8, 2024-4-30 03:05 , Processed in 0.027976 second(s), 7 queries , Gzip On, MemCached On.
Powered by Discuz! X3.4
© 2001-2023 Discuz! Team.