看來我真的 Lag 相當久了
因為之前都是一直持續在使用 Stata 9
對於 Stata 公司採取的策略覺得很奇怪
雖然 Stata 的優勢下列幾點
(1)相點便宜;不像SAS、Statistica、SPSS都有在賣不同的統計模組。Stata一次就給你全部
然後還可以上網蒐尋研究相關的新演算法
(2)不像 SAS是用出租的方式收取年費;Stata基本上是賣斷的
(3)操作簡便、輔助文件、說明文件、專書超多;好啦,我知道中文的資訊還是很少…
(4)跨平台跨很大
但是在資料的處理上,不能搭配其他軟體或開發語言(例∶C++、VB、Excel)就覺得蠻怪的
因為很多問題,模型的處理
又不可能只靠 Stata 就搞得定
舉例來說,在 Stata 也可以用 ODBC 的方式直接連結資料庫;是的,你可以直接下 SQL 語法;不過會用 Stata 的人,往往重點不是在分析資料就是在建立模型。而在 Stata 中只要SQL的語法不小心寫錯或是下錯了,提示的資訊實在是少的可憐…所以為什麼我不能與其他軟體好好的分工合作啊…
這實在是我一直想不懂的啊
事實證明,我想太多啦
人家早就在 Stata 10版加入這個功能啦
而現在 Stata 11新版也已經問世啦!!!
官網的 Using Stata Automation 就寫得很清楚啦
網頁中是以 VBS 與 VB.NET 舉例啦
當然你事先要先安裝一下 Stata Automation Object
To register the Stata Automation type library on a Windows non-Vista machine, do the following steps:
- From the Start menu, select Run, enter cmd, and click OK.
- Change the directory to the directory with the Stata executable.
- Type StataSE /Register or StataSE /Regserver.
用這個方法的好處是???
等一下你就可以在 EXCEL 的 VBA 編輯器中 ,引用 Stata 物件
「工具」-->「設定引用項目」—>「Stata」
然後可以在 灠覽物件 的視窗中進行查看,而在寫 VBA 語法的時候,編輯器也會提示你相關的語法(這就是重點! XD)
不過 VB.NET 與 Excel VBA 中引用物件的寫法比較不一樣
例如:
[VB.NET]
' create a Stata Automation object and Stata is launched
' and will be visible.
Dim stataobj As New stata.StataOLEApp()
而在Excel:
[Excel]
' create a Stata Automation object and Stata is launched
' and will be visible.
Dim stataobj As New stata.StataOLEApp
嗯 總之,一切還是以 VBA 的線上說明為主,
像我就是查詢 Dim 才知道原來在 Excel 中引用新物件的語法 就像 Stata 的 help 、search 指令一樣,大家實在沒有必要記憶太多函數、語法,反正到時候查得到就好 XD
無論如何
有了 OLE Automation 這項利器
對於資料分析時間的節省有很大的幫助!
實際上,在網路問了在研究機構就業的朋友
人家早就這樣搭配 Stata 進行模型研究好一陣子了 Orz
果然有需求就會有人開發啊 XD
0 意見:
張貼意見
歡迎留下你的想法
只要您擁有 Google 或 OpenId帳號即可留言
待檢查後即可顯示於網頁