我有一個創建了SAS存儲過程,也可以通過SAS管理控制檯來創建Web服務一樣,提取SAS存儲過程Web服務,並將其存儲在數據幀
我想通過Python在Web服務中執行該存儲過程,並希望將存儲過程生成的數據集存儲在Python中的數據框中。
我真的很感激,如果我可以,這個過程是可能的,如果是的話,我應該如何繼續下去。
我有一個創建了SAS存儲過程,也可以通過SAS管理控制檯來創建Web服務一樣,提取SAS存儲過程Web服務,並將其存儲在數據幀
我想通過Python在Web服務中執行該存儲過程,並希望將存儲過程生成的數據集存儲在Python中的數據框中。
我真的很感激,如果我可以,這個過程是可能的,如果是的話,我應該如何繼續下去。
我不知道很多關於蟒蛇但現在看來,有可能在JSON格式接收數據(見Python - Parsing JSON Data Set)
沒有可用於SAS一個免費的工具,可以很容易地在JSON發送數據集格式(它建立在與javascript對話的基礎上,但在你的情況下也應該如此)。該.sas文件可以在這裏下載 - 地方https://github.com/Boemska/h54s/blob/master/sasautos/h54s.sas
保存上述文件中的SASApp服務器(例如/ SASEnvironment/SASCode /程序)和代碼如下:
/* this part compiles the json macros */
%inc "SASEnvironment/SASCode/Programs/h54s.sas";
/* this part is for producing your dataset in SAS */
data work.YOURDATASET;
set sashelp.class;
run;
/* this part sends your dataset as JSON via _webout */
%hfsHeader; /* sets up json */
%hfsOutDataset(jsonLabel,WORK, YOURDATASET); /* sends data */
%hfsFooter; /* finishes up json with some audit, eg userid, datetime etc */
從上面可以響應直接在瀏覽器中查看,這應該有助於構建相關的python「數據框架」。
如果你是9.4,它變得更容易(無需第三方工具):如果
data work.YOURDATASET;
set sashelp.class;
run;
proc json out=_webout pretty nosastags;
export work.YOURDATASET;
run;
良好的聲譽,但如果用戶在9.3M2或9.4上,SAS提供的PROC JSON可以完成這項工作,而無需依賴第三方宏。 –
我們的平臺是9.03.01M2P081512,並且proc json不可用。但是,這是一個很好的觀點,回答更新。 –
不知道這是可能的或沒有。熊貓可以閱讀xport和sas7bdat,但http://pandas-docs.github.io/pandas-docs-travis/io.html#io-sas-reader – JohnE
@JohnE +1很高興知道熊貓可以處理xport和sas7bdat –
@Jinsi你在什麼SAS版本? –