首页 > 编程语言 > 详细

SAS,R和Python应对数据管理和分析挑战

时间:2019-10-18 14:57:07      阅读:64      评论:0      收藏:0      [点我收藏+]

原文链接:http://tecdat.cn/?p=7886

 

去年,我与一家公司进行了短暂的咨询工作,该公司正在构建一个主要由基于Web的数据存储库驱动的分析应用程序。数据存储为SAS数据集的集合,“客户”可以通过上载SAS数据步骤和proc SQL脚本来将其作为子集。生成的数据随后可供下载。我的职责是指导团队使用SAS应对数据管理和分析挑战。

 在安装和配置WPS之后,我的任务是开发解决方案,以解决我们早期面临的性能挑战。 

 针对此挑战的替代设计涉及WPS的proc R,其中可以利用将SAS数据集导出/导入到R数据帧以及从SAS / WPS脚本执行R代码的功能。进入R世界之后,识别稀疏列并创建一个删除这些列的新数据框的任务很简单。 

 首先包含/运行SAS autoexec文件。

技术分享图片技术分享图片?

 

接下来定义一个简单的SAS宏“函数”,该函数将数据集名称作为参数并打印行和列的#。在测试SAS数据集上调用它。

技术分享图片技术分享图片?技术分享图片技术分享图片?技术分享图片技术分享图片?

 

 

 

将测试SAS数据集导出到R数据帧,确定哪些列为60%或更高notnull,将这些列组装到新数据帧中,然后将该数据帧导入SAS。注意注释的语句除了空值外还标识空白。264列中只有33列达到60%阈值。该单元的执行非常迅速。

技术分享图片技术分享图片?技术分享图片技术分享图片?技术分享图片技术分享图片?技术分享图片技术分享图片?技术分享图片技术分享图片?技术分享图片技术分享图片?技术分享图片技术分享图片?技术分享图片技术分享图片?技术分享图片技术分享图片?技术分享图片技术分享图片?技术分享图片技术分享图片?技术分享图片技术分享图片?技术分享图片技术分享图片?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

接下来,将SAS数据集导出到Python pandas,然后部署Python函数以确定每列中的%notnull并创建一个新的pandas数据框,其中只有%notnull超过.6的列。经过Python处理后,将pandas数据框导入SAS。与R一样 。这个单元比上一个单元耗费了一个数量级的时间。

技术分享图片技术分享图片?技术分享图片技术分享图片?技术分享图片技术分享图片?

技术分享图片技术分享图片?

技术分享图片技术分享图片?

技术分享图片技术分享图片?

技术分享图片技术分享图片?

技术分享图片技术分享图片?

技术分享图片技术分享图片?

技术分享图片技术分享图片?

尽管SAS仍然是一个主要的分析平台,并且不会很快消失,但它已为R和Python的分析工作所取代。对于SAS / WPS程序员而言,Python和R proc是Base SAS的非常有用的附件。确实,商业和开放源代码的竞争数据科学生态系统之间的互操作性将继续提高-这对数据科学世界来说无非是一件好事。目前,WPS的proc R比proc Python快很多,因此是协作SAS工作的选择。希望proc Python将很快成为高性能,使SAS数据程序员能够平等地访问前两个DS平台。

 

 

 

 

 如果您有任何疑问,请在下面发表评论。 

 

技术分享图片?

 

  

大数据部落 -中国专业的第三方数据服务提供商,提供定制化的一站式数据挖掘和统计分析咨询服务

统计分析和数据挖掘咨询服务:y0.cn/teradat(咨询服务请联系官网客服

技术分享图片?技术分享图片QQ:3025393450

 

技术分享图片?QQ交流群:186388004 技术分享图片

【服务场景】  

科研项目; 公司项目外包;线上线下一对一培训;数据爬虫采集;学术研究;报告撰写;市场调查。

【大数据部落】提供定制化的一站式数据挖掘和统计分析咨询

技术分享图片

欢迎选修我们的R语言数据分析挖掘必知必会课程!

技术分享图片

SAS,R和Python应对数据管理和分析挑战

原文:https://www.cnblogs.com/tecdat/p/11697972.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!