2014-02-05 111 views
0

我正在嘗試導出F-statistic和Prob> F以進行2次係數測試(對於各個迴歸測試)。我使用xml_tab將回歸結果導出到excel中。我已經能夠將F-stat和概率[r(p)和r(F)]的結果存儲爲本地數據,但無法找到一種使流程自動化的方法,以便這些結果顯示在我的總體迴歸中在xml_tab中。我知道這是一個用戶編寫的命令,但想知道是否有人已經發現了黑客行爲。我不想「複製粘貼」,因爲有2個測試和很多回歸(我有更多),我想盡量減少人爲錯誤。我的代碼結構如下。Stata - 使用XML_Tab導出F測試結果

reg y x control1 control2 control3, robust plus 
estimates store model_1 
test control1 = control2 
local p_1=r(p) 
local f_1=r(F) 
test control1 = control3 
local p_2=r(p) 
local f_2=r(F) 
local x = upper(word(c(current_date),1)+word(c(current_date),2)+word(c(current_date),3)) 
    xml_tab author_model_1 /// 
    "C:\Users\analysis_(`x').xml", /// 
    replace nolabel below tstat /// 
    format((S2110) (SCCB0 NCCR3 NCCR2)) /// 
    keep(y x control1 control2 control3) /// 
    stats(N r2 r2_a p) /// 
    sheet("Analysis") /// 
    title("Analysis") /// 
    cwidth(0 100, 1 80, 2 80, 3 80) /// 
    cnames("Basic Regression") 
+0

你是什麼意思「...以便這些結果顯示在我在xml_tab的整體迴歸中。」 ?您是否已經完成了_在Stata_上創建印刷表格,Lokshin和Sajaia,Stata Journal(2008)8,Number 3?它可以在網上免費獲得。 –

+0

謝謝!我已經檢查過,但仍然不知道我能做什麼。我知道我的測試可以存儲爲參數r(p)和r(F),但不知道如何讓它們在xml_tab中導出,更不用說區分這兩個測試。我試圖用'stat'部分作爲存儲的本地人來調用它們,但它不起作用。我指的是函數的'stat'部分 - 或者你推薦一些與矩陣有關的東西? – user2836019

+0

我已經更新了我的答案。 –

回答

1

幾個錯誤你的代碼:

xml_tab命令的語法是:

xml_tab [namelist] [, options] 

其中名稱列表 「是存儲估計或矩陣列表」 。您有author_model_1不符合該要求。

2.將.xml文件輸出必須與選項save(["]filename["]) 你不同意這種要麼遵守規定。

3.您的keep()選項包含因變量,但keep()用於處理係數。因變量沒有係數。

下面的代碼工作(只是改變輸出目錄)

clear all 
set more off 

sysuse auto 

reg price mpg weight length, robust plus 
estimates store model 

local x = upper(word(c(current_date),1)+word(c(current_date),2)+word(c(current_date),3)) 
display "`x'" 

xml_tab model, /// 
    save("D:\USER\Desktop\myfile_(`x').xml") /// 
    replace nolabel below tstat /// 
    format((S2110) (SCCB0 NCCR3 NCCR2)) /// 
    keep(mpg weight length) /// 
    stats(N r2 r2_a p) /// 
    sheet("Analysis") /// 
    title("Analysis") /// 
    cwidth(0 100, 1 80, 2 80, 3 80) /// 
    cnames("Basic Regression") 

所有這一切都可以解決的簡單看help xml_tab

該命令根據其幫助文件僅允許存儲的估計結果(使用estimates store)和矩陣。 如果你想導出,例如,test(這將而不是保存爲estimates store)的結果,那麼你可以將結果保存到矩陣並將其輸入到xml_tab。但是,一些測試表明,你不能同時餵食,因此必須進行兩次呼叫。所有存儲的估算結果的第一個;所有矩陣的第二個。像這樣的工作:

clear all 
set more off 

sysuse auto 

reg price mpg weight length, robust plus 
estimates store model 

test mpg = weight 
matrix p1 = r(p) 
matrix f1 = r(F) 

test mpg = length 
matrix p2 = r(p) 
matrix f2 = r(F) 

local x = upper(word(c(current_date),1)+word(c(current_date),2)+word(c(current_date),3)) 

xml_tab model, save("D:\USER\Desktop\myfile_(`x').xml") replace 
xml_tab p1 f1 p2 f2, save("D:\USER\Desktop\myfile_(`x').xml") append 

結果分佈在兩張(用MS Excel打開時)。我發現你的追求輸出笨拙,但我不是使用xml_tab命令的專家。您可能想要探索Stata內置命令(xml_tab是來自SSC的用戶編寫的命令)。要直接導出到電子表格,請嘗試使用help export excel,help putexcel。更多一般選項請嘗試help export。對於允許導出結果的受歡迎的用戶編寫命令,請嘗試ssc describe estoutssc describe tabout