Sử dụng Stata cơ bản - Phan Hoàng Long

pdf 41 trang Gia Huy 17/05/2022 2860
Bạn đang xem 20 trang mẫu của tài liệu "Sử dụng Stata cơ bản - Phan Hoàng Long", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfsu_dung_stata_co_ban_phan_hoang_long.pdf

Nội dung text: Sử dụng Stata cơ bản - Phan Hoàng Long

  1. SỬ DỤNG STATA CƠ BẢN Phan Hoàng Long – Khoa QTKD - DUE
  2. STATA, SAS, SPSS và R SPSS SAS Stata R Điểm mạnh • Dễ học và sử dụng • Rất mạnh và • Mạnh và toàn diện • Rất mạnh và toàn • Biểu đồ tốt toàn diện hơn SPSS diện • Rất hiệu quả khi chạy • Thông dụng cho • Rất hiệu quả khi • Miễn phí các mô hình hồi quy cơ việc xử lý dữ chạy các mô hình bản liệu khối lượng hồi quy nâng cao lớn Điểm yếu • Khó sử dụng cho các mô • Chủ yếu dùng • Khó học và sử dụng • Dùng code, khó học hình hồi quy nâng cao code nên khó hơn SPSS nhưng dễ và sử dụng hơn • Chủ yếu phù hợp cho các học và sử dụng hơn SAS và R SAS, SPSS và Stata. phương pháp nghiên cứu hơn SPSS và • Khả năng xử lý dữ • Cho người có trình trong lĩnh vực khoa học Stata liệu khối lượng lớn độ lập trình nhất xã hội, nghiên cứu thị yếu hơn SAS và R định trường hay tâm lý học
  3. Sử dụng Stata ■ Câu lệnh ■ Menu
  4. Phần I: Cross-sectional OLS ■ File dữ liệu: “1 - Diem tot nghiep va luong khoi diem.xlsx”
  5. Thay đổi thư mục làm việc, import dữ liệu cd "C:\Users\Admin\Dropbox\STATA tutorial" import excel "1 - Diem tot nghiep va luong khoi diem.xlsx", sheet("Sheet1") firstrow
  6. Kiểm tra dữ liệu
  7. Quản lý các biến drop STT MasoSV rename Ngaythangnamsinh DoB sort Diemtotnghiep
  8. Format của dữ liệu Numerical %fmt Description Example right-justified %#.#g general %9.0g %#.#f fixed %9.2f %#.#e exponential %10.7e %21x hexadecimal %21x %16H binary, hilo %16H %16L binary, lohi %16L %8H binary, hilo %8H %8L binary, lohi %8L right-justified with commas %#.#gc general %9.0gc %#.#fc fixed %9.2fc right-justified with leading zeros %0#.#f fixed %09.2f left-justified %-#.#g general %-9.0g %-#.#f fixed %-9.2f %-#.#e exponential %-10.7e left-justified with commas %-#.#gc general %-9.0gc %-#.#fc fixed %-9.2fc You may substitute comma (,) for period (.) in any of the above formats to make comma the decimal point. In %9,2fc, 1000.03 is 1.000,03. Or you can set dp comma.
  9. Format của dữ liệu date string %fmt Description Example %fmt Description Example right-justified right-justified %tc date/time %tc %#s string %15s %tC date/time %tC %td date %td left-justified %tw week %tw %-#s string %-20s %tm month %tm %tq quarter %tq centered %th half-year %th %~#s string %~12s %ty year %ty %tg generic %tg left-justified %-tc date/time %-tc %-tC date/time %-tC %-td date %-td etc.
  10. Mô hình hồi quy OLS ■ Lương khởi điểm = Điểm tốt nghiệp + Điểm hoạt động + Ngành + Giới tính + ɛ
  11. Các phép toán trong stata
  12. Tạo biến mới ■ tab Gioitinh ■ tab Nganh ■ gen D_Nam = 1 if Gioitinh==“Nam” ■ replace D_Nam=0 if Gioitinh!=“Nam” ■ gen D_NganhKT = 1 if Nganh==“Kinh te” ■ replace D_NganhKT=0 if D_NganhKT == . ■ encode Gioitinh, gen(D_Gioitinh) ■ encode Nganh, gen(D_Nganh) ■ tab D_Gioitinh ■ tab D_Nganh ■ save "Diem tot nghiep va luong khoi diem.dta"
  13. Mô tả tổng kết dữ liệu
  14. Mô tả tổng kết dữ liệu ■ Mô tả: sum Luongkhoidiem Diemtotnghiep Diemhoatdong D_Nam D_NganhKT ■ Mô tả chi tiết: summarize Luongkhoidiem, d ■ Mô tả theo nhóm: bysort Gioitinh: sum Luongkhoidiem ■ Bảng mô tả: table Gioitinh Nganh, contents(mean Luongkhoidiem median Diemtotnghiep max Diemhoatdong ) ■ Tương quan: pwcorr Diemtotnghiep Diemhoatdong Luongkhoidiem D_Nam D_NganhKT, sig star(5) ■ Biểu đồ: twoway (scatter Luongkhoidiem Diemtotnghiep, sort)
  15. T-test ttest Luongkhoidiem, by(Gioitinh) ttest Luongkhoidiem, by(Nganh) ttest Luongkhoidiem if Dantoc == "Kinh", by(Nganh)
  16. Chạy hồi quy ■ Lương khởi điểm = Điểm tốt nghiệp + Điểm hoạt động + Ngành + Giới tính + ɛ regress Luongkhoidiem Diemtotnghiep Diemhoatdong D_Nam D_NganhKT regress Luongkhoidiem Diemtotnghiep Diemhoatdong D_Nam D_NganhKT, vce(robust) regress Luongkhoidiem Diemtotnghiep Diemhoatdong D_Nam D_NganhKT if Dantoc =="Kinh", vce(hc2) regress Luongkhoidiem Diemtotnghiep Diemhoatdong D_Nam D_NganhKT, cformat(%6.3f) sformat(%4.1f) pformat(%4.2f)
  17. Phân tích sau hồi quy ■ Breusch-Pagan / Cook-Weisberg test for heteroskedasticity: estat hettest ■ Residual: predict RES, resid ■ Fitted values: predict fitted_Luong_khoi_diem
  18. Mô hình hồi quy mở rộng ■ Lương khởi điểm = Điểm tốt nghiệp + Điểm hoạt động + Ngành + Giới tính + Tuổi + Tháng sinh + Dân tộc + ɛ ■ gen ThangSinh=month(DoB) ■ gen NamSinh=year(DoB) ■ gen Tuoi=2018-NamSinh ■ Replace Dantoc=trim(Dantoc) ■ xi: reg Luongkhoidiem Diemtotnghiep Diemhoatdong D_Nam D_NganhKT Tuoi i.ThangSinh i.Dantoc
  19. Mô hình hồi quy mở rộng với biến tương tác ■ Lương khởi điểm = NgànhKT x Điểm tốt nghiệp + Điểm hoạt động + Giới tính + Tuổi + Tháng sinh + Dân tộc + ɛ ■ xi: regress Luongkhoidiem D_NganhKT##c.Diemtotnghiep Diemhoatdong D_Nam Tuoi i.ThangSinh i.Dantoc ■ Lương khởi điểm = Điểm tốt nghiệp + NgànhKT x Điểm hoạt động + Giới tính + Tuổi + Tháng sinh + Dân tộc + ɛ ■ xi: regress Luongkhoidiem Diemtotnghiep D_NganhKT##c.Diemhoatdong D_Nam Tuoi i.ThangSinh i.Dantoc ■ Lương khởi điểm = NgànhKT x Điểm tốt nghiệp + NgànhKT x Điểm hoạt động + Giới tính + Tuổi + Tháng sinh + Dân tộc + ɛ ■ xi: regress Luongkhoidiem D_NganhKT##c.Diemtotnghiep D_NganhKT##c.Diemhoatdong D_Nam Tuoi i.ThangSinh i.Dantoc
  20. Xuất bảng kết quả ■ ssc install estout ■ eststo: regress Luongkhoidiem Diemtotnghiep Diemhoatdong ■ eststo: regress Luongkhoidiem Diemtotnghiep Diemhoatdong D_Nam D_NganhKT ■ eststo: xi: reg Luongkhoidiem Diemtotnghiep Diemhoatdong D_Nam D_NganhKT Tuoi i.ThangSinh i.Dantoc ■ esttab est1 est2 est3
  21. Tạo các biến quantile, chuỗi con, winsorized ■ egen Q_Diemhoatdong = xtile(Diemhoatdong), n(4) ■ egen Q_Diemhoatdong = xtile(Diemhoatdong), by(Gioitinh) n(4) ■ split Hovaten, p(" ") ■ ssc install winsor2 ■ winsor2 Luongkhoidiem, cut (1 99)
  22. Thực hành ■ Summarize các biến quantile và winsorized, summize theo biến factor ■ Chạy hồi quy dùng các biến quantile, winsorize và factor mới
  23. Phần II: Time-series OLS ■ File dữ liệu: “2 – VNINDEX.xlsx” ■ import excel "2 - VNINDEX.xlsx", sheet("VNINDEX") firstrow ■ save "VNINDEX.dta“ ■ import excel "2 - VNINDEX.xlsx", sheet("Foreign trading") firstrow ■ save “Foreign Trading.dta“ ■ merge 1:1 Date using "VNINDEX.dta“ ■ save ”VNINDEX-FOREIGNTRADING.dta”
  24. Mô hình hồi quy time-series 푽푵푰푵푫푬푿_푹풆풕풖풓풏풕 = 푭풐풓풆풊품풏_푻풓 풅풊풏품풕 + 휺풕
  25. Setup time-series tsset Date, daily sort Date gen timeid=_n tsset timeid
  26. Tạo các biến destring Open High Low Close ForeignBuyValue ForeignBuyVolume ForeignSaleValue ForeignSaleVolume TradingVolume TradingValue NegotiatedTradingValue NegotiatedTradingVolume, replace ignore(" ,") gen ln_VNI_Ret=ln(Close/Close[_n-1]) gen Foreign_Gross_Volume=(ForeignBuyVolume+ForeignSaleVolume)/10^9 gen Foreign_Net_Volume=(ForeignBuyVolume-ForeignSaleVolume)/10^9
  27. Thực hành ■ Tạo biến quartile cho Foreign_Gross_Volume, Foreign_Net_Volume ■ Lập bảng mô tả tổng kết các biến, mô tả theo quartile ■ Tạo biến D_High_Foreign_Gross_Volume, D_High_Foreign_Net_Volume ■ t-test ln_VNI_Ret theo D_High_Foreign_Gross_Volume, D_High_Foreign_Net_Volume
  28. Stationary test dfuller ln_VNI_Ret, lags(4) pperron Foreign_Gross_Volume, lags(4)
  29. Chạy hồi quy Newey-west ■ newey ln_VNI_Ret Foreign_Gross_Volume, lag(3) ■ gen Month=month(Date) ■ newey ln_VNI_Ret Foreign_Gross_Volume i.Month, lag(3) ■ newey ln_VNI_Ret Foreign_Net_Volume, lag(3) ■ newey ln_VNI_Ret Foreign_Net_Volume i.Month, lag(3) ■ reg ln_VNI_Ret Foreign_Net_Volume i.Month, lag(3) (để có R-square)
  30. Thực hành ■ Tạo các biến Foreign_Gross_Value, Foreign_Net_Value ■ Tạo biến Day_of_Week: gen DoW=dow(Date) ■ Summarize các biến ■ Test unit-root của các biến mới ■ Chạy hồi quy sử dụng các biến mới
  31. Mô hình hồi quy VAR 푽푵푰푵푫푬푿_푹풆풕풖풓풏풕 = 푭풐풓풆풊품풏_푻풓 풅풊풏품풕 + 푽푵푰푵푫푬푿_푹풆풕풖풓풏풕 + 휺풕 푭풐풓풆풊품풏_푻풓 풅풊풏품풕 = 푽푵푰푵푫푬푿_푹풆풕풖풓풏풕 + 푭풐풓풆풊품풏_푻풓 풅풊풏품풕 + 휺풕
  32. Chạy hồi quy VAR var ln_VNI_Ret Foreign_Gross_Volume, lags(1/1) varsoc ln_VNI_Ret Foreign_Gross_Volume, maxlag(5) var ln_VNI_Ret Foreign_Gross_Volume, lags(1/5)
  33. Thực hành ■ Chạy hồi quy VAR bằng các biến Foreign_Net_Volume, Foreign_Gross_Value, Foreign_Net_Value ■ Tạo các biến Netgotitate_trading, chạy hồi quy Newey West và VAR (với các lag khác nhau) bằng các biến này
  34. Phần III: Hồi quy Panel ■ File dữ liệu “US firms quarterly.dta” ■ Mô hình: 푹풆풕풖풓풏풊,풕 = 푵풆풕 풊풏 풐 풆풊,풕 + 푪 풔풉풊,풕 + 푫풊풗풊풅풆풏풅풊,풕 + 푴 풓풌풆풕 풗 풍풖풆풊,풕 + 푻풐풕 풍 풔풔풆풕풔풊,풕 + 휺풊,풕
  35. Tạo biến thời gian và biến ID ■ gen timequarter=quarterly(datacqtr, "YQ") ■ format timequarter %tq ■ gen timeid_q=qofd(datadate) ■ format timeid_q %tq
  36. Setup panel data xtset companyID timequarter, quarterly
  37. Tạo các biến cần thiết cho hồi quy ■ gen ln_Return=ln(prchq/prchq[_n-1]) ■ gen ln_MV=gen ln_MV=ln(mkvaltq) ■ gen ln_Asset=ln(atq) ■ gen Industry=substr(sic,1,1)
  38. Chạy hồi quy với time fixed effect và firm fixed effect xtreg ln_Return niq chq dvpspq ln_MV ln_Asset i.year, fe xtreg ln_Return niq chq dvpspq ln_MV ln_Asset i.year, fe vce(cluster Industry)
  39. Chạy hồi quy với time fixed effect và industry fixed effect ■ encode Industry, gen (Industry_ID) ■ xtset Industry_ID ■ xtreg ln_Return niq chq dvpspq ln_MV ln_Asset i.year, fe
  40. Chạy hồi quy với biến trễ và biến thay đổi 푹풆풕풖풓풏풊,풕 = 푵풆풕 풊풏 풐 풆풊,풕 + 푪 풔풉풊,풕 + 푫풊풗풊풅풆풏풅풊,풕 + 푴 풓풌풆풕 풗 풍풖풆풊,풕 + 푻풐풕 풍 풔풔풆풕풔풊,풕 + 휺풊,풕 푹풆풕풖풓풏풊,풕 =∆풕푵풆풕 풊풏 풐 풆풊 +∆풕푪 풔풉풊 +∆풕푫풊풗풊풅풆풏풅풊 + 푴 풓풌풆풕 풗 풍풖풆풊,풕 + 푻풐풕 풍 풔풔풆풕풔풊,풕 + 휺풊,풕
  41. Thank you ■ phanhoanglong@due.edu.vn