亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Web服務(wù)的SPSS與.NET系統(tǒng)集成開發(fā)

        2017-01-20 09:28:12李五俊胡建華
        軟件 2016年4期
        關(guān)鍵詞:WEB服務(wù)統(tǒng)計分析

        李五俊 胡建華

        摘要:為了把SPSS強(qiáng)大的統(tǒng)計分析功能應(yīng)用在特定應(yīng)用領(lǐng)域的數(shù)據(jù)處理系統(tǒng)中,利用SPSS的可編程擴(kuò)展機(jī)制與.NET進(jìn)行交互集成,將所需的SPSS的統(tǒng)計分析功能封裝為可被調(diào)用的web服務(wù)。通過客戶端程序調(diào)用Web服務(wù),向SPSS提供數(shù)據(jù)源和處理請求,并反饋SPSS處理結(jié)果。通過藥物分析中的線性回歸分析實例驗證了該方法的可行性,能大大降低軟件開發(fā)成本。

        關(guān)鍵詞:Web服務(wù);SPSS編程擴(kuò)展;.NET集成開發(fā);統(tǒng)計分析

        中圖分類號:TP31;TP39 文獻(xiàn)標(biāo)識碼:A DOI:10.3969/j.issn.1003-6970.2016.04.005

        0 引言

        隨著信息技術(shù)的發(fā)展成熟,無論是科學(xué)研究領(lǐng)域還是生產(chǎn)服務(wù)領(lǐng)域?qū)?shù)據(jù)分析的重要性越來越重視,通過對業(yè)務(wù)數(shù)據(jù)的分析挖掘,可以為科學(xué)研究人員或企業(yè)組織的領(lǐng)導(dǎo)者提供更好的決策支持。如何把現(xiàn)有的數(shù)據(jù)分析處理軟件功能集成到待開發(fā)的領(lǐng)域軟件或系統(tǒng)中,降低軟件開發(fā)成本,縮短開發(fā)周期,提高軟件開發(fā)效率是近年來軟件技術(shù)人員關(guān)注的焦點,已有相關(guān)的一些成果。SPSS不但提供了豐富的算法來幫助用戶完成各種各樣的統(tǒng)計分析任務(wù),還支持多種語言的集成接口,使第三方軟件系統(tǒng)開發(fā)商能夠以高性能、低成本的方式,把SPSS集成到其軟件產(chǎn)品中,從而可以根據(jù)需要調(diào)用SPSS強(qiáng)大的統(tǒng)計分析功能。由于不同的異構(gòu)系統(tǒng)在集成過程中的強(qiáng)耦合性會帶來系統(tǒng)開發(fā)、維護(hù)和升級的困難。因此,在不同系統(tǒng)的集成過程中必須考慮降低耦合性的問題。Web服務(wù)能夠?qū)崿F(xiàn)不同系統(tǒng)之間良好的互操作,并且具有即時裝配、松散耦合、自動集成的能力。它的平臺和語言中立性使得跨平臺的互操作、系統(tǒng)的整合更加容易。

        因此本文通過NET平臺將SPSS的部分統(tǒng)計分析功能設(shè)計成Web服務(wù),通過訪問Web服務(wù)的形式完成SPSS功能的集成。將SPSS集成開發(fā)成Web服務(wù),在用戶操作界面可以將功能操作和結(jié)果展現(xiàn)做的更加簡單、直觀、容易理解,即使非專業(yè)的統(tǒng)計分析人員也可以很容易的使用。同時WEB服務(wù)的共享性,還可以降低SPSS投資和使用費用。

        1 相關(guān)技術(shù)介紹

        1.1 SPSS的可編程性擴(kuò)展及.NET插件

        SPSS(statistical Analysis System)是目前應(yīng)用廣泛、功能強(qiáng)大的通用統(tǒng)計分析軟件,提供了大量的統(tǒng)計分析方法。但SPSS學(xué)習(xí)掌握困難,需要用戶要求較高數(shù)理知識和編程能力。為了方便SPSS與其他應(yīng)用系統(tǒng)的集成,SPSS提供了靈活的外部編程技術(shù)支持。外部編程語言和SPSS的交互是通過SPSS提供的SDK(Software Development Kit),該SDK主要由兩個動態(tài)鏈接庫文件SPSSXD API和SPSSDXAPI構(gòu)成。SPSS通過SPSSDX API,即spssdx.dll動態(tài)鏈接庫程序來把其他外部編程語言集成在其系統(tǒng)內(nèi)部,這不是本文討論的主題。

        SPSS通過SPSSXD API來實現(xiàn)外部語言程序訪問SPSS功能。SPSS提供了一系列的插件(plug-in)程序,如python plug-in,R plug-in,.Net plug-in。通過這些支持不同語言或平臺的插件,經(jīng)過SPSSXD API在后臺激活和控制SPSS。

        SPSS的.NET插件提供了兩個.NET程序集(Assemblies)。SPSS.BackendAPI.dll是用來啟動SPSS內(nèi)部接口的動態(tài)庫(spssxd.dll),使得在基于.NET平臺的應(yīng)用程序語言中可以使用SPSSXD API。而SPSS.BackendAPI.Controller.dll包裝了底層的SPSS功能接口并且暴露給SPSS.BackendAPI.dll,它提供的功能包括啟動SPSS,執(zhí)行SPSS語法命令,讀取和寫人數(shù)據(jù),創(chuàng)建SPSS輸出等。SPSS使用自身的命令語言Syntax驅(qū)動SPSS做各種統(tǒng)計分析工作,可以讀取數(shù)據(jù),進(jìn)行數(shù)據(jù)處理以及進(jìn)行統(tǒng)計分析。Syntax語句類似SQL語句,語句靈活,執(zhí)行效率高,可以嵌入到SPSS所支持的外部通用語言中。

        1.2 Web Service技術(shù)

        軟件系統(tǒng)構(gòu)建過程中,特別是在Internet環(huán)境的軟件系統(tǒng)下,模塊之間的強(qiáng)耦合會給軟件的維護(hù)與升級帶來不利的影響。因此,軟件行業(yè)內(nèi)提出了面向服務(wù)的體系結(jié)構(gòu)(SOA),把軟件功能模塊以服務(wù)形式進(jìn)行封裝,按照業(yè)務(wù)邏輯組合服務(wù)完成軟件功能。Web服務(wù)(Web Services)是目前在Internet環(huán)境下實現(xiàn)面向服務(wù)的體系結(jié)構(gòu)(SOA)的主要技術(shù),通過跨平臺、松散耦合的Web Services之間進(jìn)行相互調(diào)用和集成來實現(xiàn)軟件功能目標(biāo)。XML是Web Service的核心技術(shù),XML為Web Service提供了統(tǒng)一的數(shù)據(jù)格式,從而幫助消除使用不同組件模型、操作系統(tǒng)和編程語言的系統(tǒng)之間存在的差異,可以滿足Web客戶端、桌面客戶端以及移動客戶端軟件的開發(fā)。

        根據(jù)不同領(lǐng)域?qū)?shù)據(jù)分析處理的需要,編寫相關(guān)的SPSS統(tǒng)計應(yīng)用程序。然后將這些特定SPSS的統(tǒng)計應(yīng)用在.NET平臺下封裝成為Web服務(wù),就可以在Internet或Intranet環(huán)境中進(jìn)行Web服務(wù)的發(fā)布、發(fā)現(xiàn)、動態(tài)綁定等,從而實現(xiàn)SPSS統(tǒng)計應(yīng)用功能的組件化。通過綁定和共享這些服務(wù)可以方便快捷的實現(xiàn)SPSS的跨平臺集成。從而使SPSS的強(qiáng)大的統(tǒng)計分析功能可以借助Web服務(wù)實現(xiàn)網(wǎng)絡(luò)化,不再局限于點對點的服務(wù)模式。

        2 基于Web服務(wù)的SPSS與.NET系統(tǒng)集成

        2.1 SPSS與.NET的集成原理

        SPSS與.NET的集成原理如圖l所示。

        安裝SPSS提供的SPSS Statistics NetPlugln插件程序后,在.NET應(yīng)用程序中就可以加載和引用SPSS.BackendAPI.dll和SPSS.BackendAPI.Controlller.dll類庫文件中所提供的訪問SPSS的各種類。在SPSS.BackendAPI.Controlller類庫中的Processor類是十分關(guān)鍵的一個類。通過Processor類可以創(chuàng)建一個控制SPSS的控制器(processor)實例對象,利用控制器(processor)實例對象的submit方法向SPSS提交Syntax命令以及需要處理的數(shù)據(jù)。

        Processor類的實例對象必須通過SPSS后臺庫文件spssxd.dll驅(qū)動SPSS來處理提交的命令。SPSS根據(jù)Syntax命令來完成數(shù)據(jù)的統(tǒng)計分析后,把圖、轉(zhuǎn)軸表等統(tǒng)計分析結(jié)果以O(shè)XML(Output XML)形式輸出。提取分析結(jié)果首先要通過OMS(Output Man-agement System)命令將生成的分析結(jié)果以O(shè)XML的形式存儲到XML工作空間。通過Processor類的EvaluateXPath(Xpath)方法可以從XML工作空間將所需的結(jié)果提取出來,其中Xpath表達(dá)式指定了所需結(jié)果的具體位置,提取出來的結(jié)果以一維字符串?dāng)?shù)組的形式保存。最后通過Processor類的StopSPSS方法結(jié)束SPSS的一次調(diào)用。

        2.2 SPSS Service服務(wù)的建立

        為了更好的利用SPSS資源,在SPSS與.NET集成的基礎(chǔ)上,進(jìn)一步把集成的程序模塊按照一定的邏輯功能封裝為具有特定任務(wù)的Web服務(wù)。這些Web服務(wù)可以發(fā)布在Internet或Intranet上,供其他軟件或系統(tǒng)調(diào)用訪問。從而實現(xiàn)SPSS計算資源的共享,同時也解決了系統(tǒng)集成和軟件架構(gòu)的耦合性問題,對系統(tǒng)或軟件的維護(hù)、升級或重用有著積極的意義。參見圖2。

        .NET集成開發(fā)環(huán)境提供了快速方便的Web服務(wù)創(chuàng)建過程。開發(fā)人員只要編寫核心的業(yè)務(wù)邏輯程序代碼,.NET系統(tǒng)可以直接完成服務(wù)的封裝和發(fā)布等操作。

        3 實例應(yīng)用

        3.1 Web服務(wù)建立

        在藥學(xué)領(lǐng)域經(jīng)常用到對藥物的某成分的含量及和其有關(guān)的效應(yīng)進(jìn)行相關(guān)及回歸分析,從而來對藥物進(jìn)行分析預(yù)測。下面以一元線性回歸模型的計算分析為例創(chuàng)建Web服務(wù),該服務(wù)的一個接口方法名為regressionAnalyze,通過輸入數(shù)據(jù)文件路徑(filepath),因變量(dependent)和自變量(indepentent),獲得DataTable類型的分析結(jié)果數(shù)據(jù)。

        [WebMethod]

        public DataTable

        regressionAnalyze(stringfilepath,string dependent,string indepentent)

        {

        private SpssPlugln p=new SpssPlugln();

        //創(chuàng)建SPSS插件對象

        p.Plugln();

        //載入插件程序,啟動SPSS通信

        p.SpssProcessor.Submit("GET FILE'"+filepath+…"'.");//通過SpssProcessor提交數(shù)據(jù)集

        string[] cmds=getSyntaxString(dependent,inde-pendent);//構(gòu)建SPSS Syntax命令

        p.SpssProcessor.Submit(cmds);//提交命令

        string[] XpathString=getXpathString();

        //構(gòu)建XPath表達(dá)式

        //通過Processor類的EvaluateXPath方法提取分析結(jié)果

        sting[][] analysisValue=new string[XpathString.Length][];

        for(int i=0;i

        {analysis Value[]=(string[])p.spssProcessor.EvaluateXPath("desctable","/outputTree",XpathString[i]);}

        return coefftable;

        //并將分析結(jié)果以DataTable的形式返回

        p.SpssProcessor.StopSPSS();//關(guān)閉SPSS

        通過ASENET設(shè)計Web客戶端程序。Web客戶端向Web服務(wù)器發(fā)送Web服務(wù)請求,Web服務(wù)器接受請求后,載入.NET插件程序創(chuàng)建SPSS控制器對象。通過SPSS控制器啟動SPSS通信并上傳源數(shù)據(jù)集、提交Syntax命令,SPSS執(zhí)行命令完成統(tǒng)計分析后將分析結(jié)果輸出到XML工作空間。SPSS控制器從XML工作空間提取分析結(jié)果并將結(jié)果返回給客戶端程序。見圖3。

        3.2 結(jié)果分析

        為了驗證本方法所獲結(jié)果的正確性,本文采用文獻(xiàn)中所提供的數(shù)據(jù),實現(xiàn)對藥學(xué)數(shù)據(jù)的線性回歸分析功能。程序運行的界面和運行結(jié)果如圖4所示。頁面上部是數(shù)據(jù)的輸入部分,選擇數(shù)據(jù)文件和確定因變量和自變量后提交。頁面下部是由SPPS計算并返回的結(jié)果和圖形。與文獻(xiàn)中的結(jié)果對比表明計算結(jié)果準(zhǔn)確,證實了該方法的可行性。

        4 結(jié)束語

        本文介紹了以.NET為開發(fā)運行平臺對SPSS軟件進(jìn)行集成的二次開發(fā)技術(shù),并且提出以Web服務(wù)調(diào)用的方式訪問SPSS強(qiáng)大的分析處理功能,最后用Web客戶端上訪問Web服務(wù)實例驗證了本文方法的可行性。實驗結(jié)果證明可以將SPAA強(qiáng)大的統(tǒng)計分析功能和web服務(wù)的跨平臺性結(jié)合起來,發(fā)揮這兩個方面的優(yōu)勢,構(gòu)建更強(qiáng)大的應(yīng)用系統(tǒng),以更大程度地發(fā)揮SPSS的分析處理和數(shù)據(jù)挖掘功能。

        猜你喜歡
        WEB服務(wù)統(tǒng)計分析
        基于線性回歸的航班延誤預(yù)測研究與系統(tǒng)開發(fā)
        財務(wù)風(fēng)險預(yù)警的統(tǒng)計研究
        叩診質(zhì)量,促進(jìn)數(shù)學(xué)有效教學(xué)
        如何發(fā)揮新時期統(tǒng)計工作的作用之我見
        企業(yè)固定資產(chǎn)分析存在問題及對策分析
        以統(tǒng)計分析為基礎(chǔ)的房地產(chǎn)稅收優(yōu)化分析
        SPSS在高校圖書館服務(wù)體系中的應(yīng)用研究
        科技視界(2016年20期)2016-09-29 11:18:30
        基于Proteus的嵌入式以太網(wǎng)Web服務(wù)虛擬實驗的設(shè)計與實現(xiàn)
        教學(xué)工作量管理系統(tǒng)的設(shè)計與實現(xiàn)
        一種基于SOA的web異構(gòu)數(shù)據(jù)集成方法研究
        国产成人午夜精华液| 刚出嫁新婚少妇很紧很爽| 中文字幕有码无码人妻av蜜桃 | 91偷拍与自偷拍亚洲精品86| 亚洲熟妇久久精品| 日韩精品无码久久久久久| 国产人妖xxxx做受视频| 少妇被粗大猛进进出出男女片| 成人爽a毛片免费视频| 欧美日韩精品一区二区三区不卡| 天堂最新在线官网av| 亚洲精品天堂日本亚洲精品| 妺妺跟我一起洗澡没忍住| 精品国产三级在线观看| 在线偷窥制服另类| 一区二区视频在线国产| 亚洲精品国偷拍自产在线观看 | 国产在线一区二区三区四区乱码 | 亚洲av午夜福利精品一区| www插插插无码免费视频网站 | 亚洲悠悠色综合中文字幕 | 久久99精品久久久久久野外 | 亚洲人成精品久久久久| 人妻熟妇乱又伦精品视频app| 日本一本草久国产欧美日韩| 国产丝袜爆操在线观看| 极品嫩模高潮叫床| 日本欧美国产精品| 国产精品二区三区在线观看| 欧美日韩午夜群交多人轮换| 亚洲色欲久久久久综合网| 日韩无码尤物视频| 最新国产女主播在线观看| 亚洲日韩一区二区一无码 | 亚洲av电影天堂男人的天堂| 亚洲精品国产二区三区在线| 亚洲av乱码一区二区三区人人| 天天躁日日躁狠狠躁| 亚洲高清无码第一| 在线女同免费观看网站| 精品国产第一国产综合精品|