2012-10-22 50 views
0

我跑在Stata一個DO清洗我的數據集,然後調用Python運行一個腳本用來生成一些必要的變量(3列):合併從Python的輸出與Stata

outsheet unique_id group_1 group_2 group 3 group_4 group_5 group_6 group_7 using groups.csv, comma replace

shell python.exe group_fix.py

這將創建一個具有4列的電子表格程序叫group_fix.csv UNIQUE_ID,group_fix_1,group_fix_2和group_fix 3.我想用UNIQUE_ID場(這是在我的數據集和PY輸出)合併這些數據集。所以基本上在Stata它看起來就像之前我叫PY再加上我的腳本創建的3個新列,所以我可以再繼續我的DO做必要的分析。

任何想法?

+0

[從Stata的調用的Python]的可能重複(http://stackoverflow.com/questions/13014789/calling-python-from-stata) –

回答

0

我想你要找的是一個臨時文件。你可以這樣做

sort unique_id 
tempfile original 
save "`original'" 
clear 
insheet using group_fix.csv, comma 
sort unique_id 
merge unique_id using "`original'" 

這會創建一個名爲「original」的臨時文件,用於存儲原始數據集。然後將用python腳本清理過的數據集與unique_id上​​的原始數據合併。值得指出的是在命令如

save "`original'" 

第一個`是tilda下的字符;第二屆「是一個單引號

希望幫助!