[程式] STATA 資料處理

看板Statistics作者 (顆顆)時間9年前 (2015/04/13 20:50), 9年前編輯推噓1(107)
留言8則, 3人參與, 最新討論串1/1
[軟體程式類別]: stata [程式問題]: 資料處理 [軟體熟悉度]: 中(3個月到1年) [問題敘述]: 如下 [程式範例]: 雖然張貼程式很可怕,但基本上有些程式還是要張貼才能解決 *教育程度 *國中以下 sum x if (dedu1==0 & dedu2==0 & dedu3==0) *高中職 sum x if dedu1 == 1 *大學、專科 sum x if dedu2 == 1 *碩博士 sum x if dedu3 == 1 我想要把 x 這個變數,根據不同的subsample算他們的平均值, 然後再把平均值排成表格的形式 例如: 0.23435 0.45435 0.43654 0.34543 目前是想到用sum 之後 r(mean) 存成新的變數 可是這樣我每一個r(mean)都要取一次別的名字 因為我不只教育這個分類的subsample,還有很多其他分類的subsample都要算x的平均值 如果一個一個取太耗工夫了 本來想用foreach 代替 if 後的變數 但因為我是dummy variable 會遇到基準組的問題 好像又很麻煩 所以想問問看有沒有什麼方法或指令 可以不用取名字就直接算出我想要的表格形式? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 117.19.131.254 ※ 文章網址: https://www.ptt.cc/bbs/Statistics/M.1428929401.A.726.html

04/13 22:28, , 1F
collapse (mean) x, by(dedu1 dedu2 dedu3)
04/13 22:28, 1F

04/13 22:28, , 2F
建議資料先存檔,-collapse-會只留下整理過後的資料
04/13 22:28, 2F

04/14 09:48, , 3F
by dedu1 dedu2 dedu3, sort: summarize x
04/14 09:48, 3F

04/14 09:48, , 4F
不用更改資料內容
04/14 09:48, 4F
謝謝 不過雖然可以一次看到這4個平均值 但還有什麼方便的方法可以把他們一次抓出 方便後續運算嗎? ※ 編輯: z5f (117.19.129.179), 04/15/2015 10:34:03

04/15 22:49, , 5F
dedu這系列的變數感覺是從edu之類的原始資料生出來的
04/15 22:49, 5F

04/15 22:49, , 6F
那就生一個單一的分組變數 然後 mean x, over(eduGroup)
04/15 22:49, 6F

04/16 07:42, , 7F
類似樓上,可以用table edugroup,c(mean x)
04/16 07:42, 7F

04/16 07:44, , 8F
比較有彈性。當然用mean x的好處是結果會存在e(b)裡頭。
04/16 07:44, 8F
文章代碼(AID): #1LAxjvSc (Statistics)