Using stata with VHLSS data_GSO

92 6 0
Using stata with VHLSS data_GSO

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Using stata with VHLSS data_GSO Using stata with VHLSS data_GSO Using stata with VHLSS data_GSO Using stata with VHLSS data_GSO Using stata with VHLSS data_GSO Using stata with VHLSS data_GSO Using stata with VHLSS data_GSO Using stata with VHLSS data_GSO Using stata with VHLSS data_GSO Using stata with VHLSS data_GSO

Tổng cục thống kê Sử dụng chơng trình Stata để khai thác số liệu Điều tra Mức sống hộ gia đình (VHLSS) * nội dung CHơNG I: GII THIệU CHUNG Về CHơNG TRìNH STATA .2 Tặ CHỉC LU TRữ Dữ LIệU TRONG STATA (DATASET IN STATA) KHậI đẫNG V THOáT KHI STATA (OPEN AND EXIT) GIAO DIƯN STATA (STATA INTERFACE) BIªN BảN LM VIệC (LOG FILE) NHậP V LU Dữ LIệU (USE, INPUT AND AND SAVE) 3 CHơNG II: KHAI THáC Dữ LIệU 10 CÊU TRĨC LƯNH TRONG STATA (STATA COMMAND SYNTAX) 2.TO¸N TƯ VΜ HΜM SÈ (OPERATORS AND FUNCTIONS) Mô Tả Dữ LIệU (DATA REPORTING) BIêN TậP V SệA CHữA Dữ LIệU (DATA MANIPULATION) QUYÒN SÈ TRONG VHLSS (WEIGHT) 10 14 15 27 41 CHơNG III: KIểM địNH GIả THIếT V PHâN TíCH HI QUY 45 ƯC LẻNG V KIểM địNH GIả THIếT (ESTIMATION AND HYPOTHESIS TESTING) PHâN TíCH T¬NG QUAN VΜ HÅI QUY (CORRELATION AND REGRESSION) 45 53 CHơNG IV: Vẽ đ THị 59 VÏ đ THị (GRAPH) MẫT Sẩ LOạI đ THị THấNG DẽNG LU TRữ V HIểN THị đ THị (SAVING AND GRAPH USING) 59 68 75 CHơNG V: LậP TRìNH TRONG STATA 77 GIÍI THIƯU CHUNG VỊ CHơNG TRìNH DO-FILE LOCAL V GLOBAL MACROS TíCH Vô HNG VΜ MA TRËN (SCALAR AND MATRIX) LƯNH ®IỊU KIƯN VΜ VSSNG LỈP GIÍI THIƯU VỊ FILE ADO 77 82 85 87 89 TΜI LIƯU THAM KH¶O .91 PHÔ LÔC 91 Ch¬ng I: Giíi thiệu chung chơng trình Stata Tổ chức lu trữ liệu Stata (Dataset in Stata) Stata phần mềm thống kê sử dụng để quản lý, phân tích số liệu vẽ đồ thị Stata cho phép lu trữ thông tin đặc điểm đối tợng nghiên cứu Số liệu lu trữ Stata đợc hiển thị dới dạng bảng nh ví dô sau: hhcode headname 101 Nguyen Van A 102 Le Thi B 103 Tran Van C Quan sát (bản ghi) hhsize 10 incomepc 2100 3210 1200 Mỗi hàng ngang bảng số liệu đợc gọi quan sát (observation), hay ghi (record) lu trữ số liệu đối tợng nghiên cứu ví dụ có quan sát lu trữ số liệu Mà hộ (hhcode); Tên chủ hộ (headname); Quy mô hộ (hhsize); Thu nhập bình quân (incomepc) hộ gia đình Biến (trờng; thuộc tính) Thông tin đối tợng nghiên cứu đợc thu thập lu trữ theo đặc điểm chúng Các đặc điểm đợc gọi biến (variable), hay trờng (field) Biến đợc xem cột bảng số liệu ví dụ có biến, với tên hhcoed, hedname, hhsize, incomepc Tên biến dài từ đến 32 ký tự, đợc bắt đầu chữ dấu gạch dới (_) Tên biến bao gồm chữ, sỗ dấu gạch dới Các ký tự đặc biệt khác dùng để đặt tên cho biến Biến xác định (identifying variables) Thông thờng biến có biến dùng để nhận dạng quan sát, đợc gọi biến xác định Nhờ có biến xác định mà quan sát phân biệt đợc với Mỗi quan sát có giá trị biến ví dụ trên, biến xác định hhcode, quan sát biến hhcode nhận giá trị Các đặc điểm biến Các biến đợc gán nhÃn (chú thích) Ví dụ biến hhcode đợc gán nhÃn Mà hộ Biến đợc định dạng (format) biến số biến ký tự với loại lu trữ khác Biến số lu trữ dới loại byte; int; long; float; double Còn biến ký tự lu trữ dới dạng str1 đến str80 cho độ dài khác Kiểu lu trữ Dung lợng dạng số (Byte) byte Giá trị nhỏ -127 Giá trị lớn nhÊt KiĨu 126 Sè nguyªn int -32,767 32,766 Sè nguyªn long -2,147,483,647 2,147,483,646 Sè nguyªn float -10^36 10^36 Sè thùc double -10^308 10^308 Sè thùc C¸c biÕn sè cã thĨ bao gåm c¸c biÕn rêi rạc liên tục Các biến nh quy mô hộ gia đình, giới tính chủ hộ, vùng địa lý, trình độ giáo dục biến rời rạc (discrete) (hay gọi biến phân loại (categorical)) Các biến đợc lu trữ dới dạng byte, int, long Các biến liên tục (continuous) nh thu nhập, chi tiêu hộ lu trữ dới dạng float double Biến ký tự (string) dùng để lu trữ loại ký tự Ví dụ biến headname biến kiểu ký tự dùng để lu trữ tên chủ hộ Kiểu lu trữ dạng chữ str1 str2 str80 Byte Độ dài lớn 2 80 80 Khởi động thoát khỏi Stata (Open and exit) Stata đợc khởi động tơng tự nh chơng trình tin học ứng dụng khác, cách kích vào biểu tợng tệp wstata.exe Windows explorer, chọn cách chọn Start -> Program -> Stata Chơng trình đợc thoát lệnh exit từ cửa sổ lệnh Stata Command, tuỳ chọn exit thực đơn (menu) File Giao diÖn Stata (Stata interface)1 Sau Stata đợc khởi động, giao diện Stata đợc lên, bao gồm thực đơn (menu bar) cùng, dới công cụ (tool bar) cửa sổ (windows) Phiên Stata có giao diện tơng tự nh phiên Stata Khác biệt lớn Stata có thêm tuỳ chọn Statistics thực đơn Tuỳ chọn cho phép thực số lệnh thống kê tuỳ chọn qua giao diện cửa sổ mà gâ c¸c lƯnh cưa sỉ Command C¸c cửa sổ Stata Các cửa sổ Stata đợc më b»ng viƯc lùa chän c¸c t chän ë thực đơn Windows (menu bar) Các cửa sổ bao gồm: Results Hiển thị lệnh kết Graph Hiển thị đồ thị Viewer Hiển thị cửa sổ trợ giúp (help) hiển thị nội dung file văn (text) Command Dùng để gõ câu lệnh Review Hiển thị lệnh đà thực Variables Hiển thị danh sách biến tệp số liệu Data editor Hiển thị sửa chữa số liệu dới dạng bảng Do-file editor Hiển thị cửa sổ để soạn thảo chơng trình Thanh thực đơn (Menu bar) Bằng cách kích vào thực đơn tuỳ chọn đó, Stata sÏ thùc hiƯn c¸c lƯnh kh¸c Thanh thùc đơn bao gồm nhóm lệnh sau đây: File Open Më file sè liƯu View Xem c¸c file cđa Stata cưa sỉ Viewer Save Lu file sè liƯu Save as Lu file sè liƯu díi tªn míi File name Chọn tên file để đa vào cửa sổ lệnh Log Đóng, mở, xem lại log file Save graph Lu giữ file đồ thị Print graph In đồ thị Print results In kết Exit Thoát khỏi Stata Edit Copy text Sao chép văn (text) Copy tables Sao chép bảng biểu Paste Dán Table copy options Lựa chọn chÐp b¶ng sè liƯu Graph copy options Lùa chän chép đồ thị (không có Stata 7) Prefs cỡ Các tuỳ chọn màu sắc, phông chữ, kích Windows Results Më cưa sỉ kÕt qu¶ Graph Më cưa sổ đồ thị Log Mở cửa sổ log file Viewer Mở cửa sổ trợ giúp (help) xem nội dung file Command Më cưa sỉ c©u lƯnh Review Më cưa sổ lệnh đà thực Variables Mở cửa sổ danh s¸ch c¸c biÕn cđa tƯp sè liƯu Help/Search Më cửa sổ trợ giúp (help) Data editor Mở cửa để xem số liệu lu trữ dới dạng bảng Do-file editor Mở cửa sổ viết chơng trình Help Các trợ giúp liên quan đến việc sử dụng Stata Thanh công cụ (tool bar) Các tuỳ chọn công cụ đợc thiết kế để thực lệnh thông dụng cđa Stata NÕu chóng ta di chun trá ®Õn nút lên câu huớng dÉn, bao gåm: Open (use) Më file sè liÖu Stata Save Lu trữ file số liệu đĩa Print results In néi dung cđa cưa sỉ kÕt qu¶ Begin log Mở, đóng xem nội dung file log Start viewer Më cưa sỉ trỵ trỵ (help) Bring Dialog Window to Đa cửa sổ hộp thoại phía trớc font Bring Result Window to Đa cửa sổ kết phÝa tríc font Bring Graph Window to §a cưa sỉ vẽ đồ thị phía trớc font Do-file editor Mở cửa sổ soạn thảo chơng trình Data editor Mở cửa sỉ sưa ch÷a sè liƯu Data browser Më cưa sỉ xem sè liƯu Clear –more- condition T¾t lƯnh more Break Dừng việc thực lệnh chơng trình Biên làm việc (log file) Thông thờng làm việc với Stata, ngời sử dụng muốn ghi lại biên làm việc bao gồm lệnh, thông báo kết phân tích thu đợc Stata cho phép ghi lại biên làm việc lệnh log using Cú pháp: log using (đờng dẫn\tên tệp) [, append replace [ text | smcl ] ] C¸c tuú chän: append Ghi biên làm việc tiếp vào file đà có sẵn replace Ghi lại biên làm việc đè lên file đà có sẵn text Tạo biên làm việc dới dạng văn (text) (phần mở rộng log) smcl Tạo biên làm việc dới dạng smcl (phần mở rộng smcl), tuỳ chọn ngầm định Ví dụ: log using baitap1 Tạo tệp baitap1 ghi lại biên làm việc th mục thời, phần mở rộng mặc định smcl log using baitap1 log: C:\baitap1.smcl log type: smcl opened on: 17 Feb 2004, 15:32:03 log using baitap1, replace T¹o tệp baitap1 ghi đè lên tệp baitap1 đà có sẵn log using d:\baitap2, text Tạo tệp baitap2 ổ đĩa D, dới dạng văn (text) (phần mở rộng log) log using append d:\baitap2, Ghi tiếp tục biên làm việc tệp baitap2 ổ đĩa D Các tệp với phần mở rộng smcl chuyển thành c¸c tƯp text b»ng lƯnh translate VÝ dơ: translate baitap1.smcl exercise1.log log of Lệnh tạm thời dừng việc ghi lại biên làm việc vào tệp log/smcl mở log on Lệnh tiếp tục ghi biên làm việc vào tệp log mở Lênh đ ợc dïng sau lƯn log using hc log off log close Lệnh đóng lu trữ tệp log mở Chú ý: - Stata cho phép ghi lại mà ngời sử dụng đà gõ cửa sổ command, việc giúp cho việc sau viết chơng trình dựa biên đà làm việc Cú pháp: cmdlog using (đờng dẫn\tên tệp) [, append replace] cmdlog {of | on | close} - Để xem file log/smcl vào thực đơn: file/log/view (hoặc cửa sổ lệnh command gõ: view (tên tệp)); mở chơng trình soạn thao văn khác nh MS-Word; Notepad Nhập lu liệu (Use, input and and save) Më tƯp sè liƯu ®ang cã: Cú pháp: use (đờng dẫn\tên tệp) Lệnh mở tệp Stata, với phần rộng dta, đợc ë tªn tƯp VÝ dơ: use ho1.dta më tƯp ho1.dta ë th mơc hiƯn thêi use "D:\VHLSS 2004\ho1.dta", clear më tƯp ho1.ta ë th mơc VHLSS 2004 trªn ỉD TƯp số liệu Stata đợc mở lựa chọn Open thực đơn File; nút Open (use) c«ng tool bar NÕu file sè liƯu cã dung lợng lớn phải thiết lập nhí cÇn dïng cho Stata b»ng lƯnh: set memory #[k|m] VÝ dô: set mem 32m set mem 32000k NhËp sè liệu Có số cách để nhập số liệu từ bµn phÝm vµo bé nhí cđa Stata - Sư dơng cửa sổ Stata editor để nhập số liệu Hoặc từ cưa sỉ command, gâ lƯnh edit Sau ®ã nhËp sè liệu theo kiểu biểu bảng cửa sổ - Sử dụng lệnh: input [danh sách biến + định dạng cần] Sau sử dụng bàn phím để nhập số liệu lần lợt cho biến quan sát Giá trị đợc nhập cách ký tự trèng KÕt thóc nhËp sè liƯu b»ng lƯnh end VÝ dô: input hhcode str15 name income hhcode name income 101 "Nguyen Van A" 1200 102 "Nguyen Van B" 1350 103 "Tran Thi C" 2310 end Stata cho phép nhập số liệu từ file sở liệu khác Trớc hết file số liệu cần đợc lu trữ dới dạng text (có thể chơng trình Excel), quan sát đợc dòng giá trị cách phẩy (commas) dấu cách (tab) Sau dùng lệnh insheet để nhập số liệu vào Stata Cú pháp: insheet [danh sách biến] using (tên tệp text) [, [no]names comma tab clear] Lệnh đọc vào nhớ Stata quan sát tệp text, tên biến đợc tạo Các tuỳ chọn: [no]names Cho phép nhập tên biến đợc dòng thứ file text comma Thông báo giá trị file text đợc phân cách dấu phẩy tab Thông báo giá trị file text đợc phân cách dấu tab clear Số liệu đợc đọc vào thay số liệu đợc thờng trú nhớ Stata VÝ dô: insheet using c:\income.txt (3 vars, obs) insheet maho hoten thunhap using c:\income.txt (note: variable names in file ignored) (3 vars, obs) Lu tr÷ sè liệu Cú pháp: save (đờng dẫn\tên tệp) [,replace] Lệnh lu trữ số liệu nhớ Stata thành tệp định dới tên tệp Nếu tuỳ chọn replace đợc tệp số liệu ghi đè lên tệp thời (tất nhiên tên tệp số liệu giống nhau) Việc lu trữ số liƯu cã thĨ thùc hiƯn b»ng c¸c tïy chän Save Save as thực đơn (menu bar); nút Save công cụ (tool bar) Chú ý: Xem thêm lệnh infile outfile Chơng II: Khai thác liệu Cấu trúc lệnh Stata (Stata command syntax) Cấu trúc lệnh Stata nh sau: [by danh s¸ch biÕn:] Có ph¸p lệnh [danh sách biến] [biểu thức] [điều kiện] [phạm vi] [qun sè] [, t chän] Trong phÇn Híng dÉn s dụng (Help) Stata, cú pháp lệnh trình bày tiÕng Anh nh sau: [by varlist:] command [varlist] [=exp] [if exp] [in range] [weight] [, options] Trong dấu ngoặc vuông ký hiệu tuỳ chọn Chú ý: - Các câu lệnh Stata đợc viết chữ thờng - Đối với tên biến, Stata phân biệt chữ viết thờng với ch÷ viÕt hoa VÝ dơ, cïng mét tƯp sè liệu, biến Ho_ten biến ho_ten biến khác - Các tuỳ chọn đợc ký hiệu dấu ngoặc vuông [ ] Các tuỳ chọn có không câu lệnh Các tham số bắt buộc (tên biến) đợc đặt dấu ngoặc < > Các câu lệnh không thực đợc tham số bắt buộc không đợc khai báo - Mét sè lƯnh Stata cho phÐp viÕt t¾t VÝ dơ lệnh summarize viết tắt sum Trong tài liệu phần gạch chân dới cú pháp câu lệnh cú pháp viết tắt câu lệnh 10 1.2 Thực tệp do-file Để chạy do-file cửa sổ lệnh gõ hai lÖnh sau: filename [, nostop] run filename [, nostop] LƯnh run thùc hiƯn c¸c lƯnh do-file nhng không hiển thị kết hình Trong trình thực do-file, có câu lệnh sai Stata báo lỗi ngừng việc thực câu lệnh sau Tuy nhiên tuỳ chọn nostop đợc Stata bỏ qua câu lệnh bị lỗi tiếp tục thực lệnh sau câu lệnh lỗi Ví dụ: "c:\vlss98\chuong trinh 1" clear set mem 32m (32768k) use "C:\VLSS98\Hhexp98n.dta", clear tab urban98 1:urban 98; | 0:rural 98 | Freq Percent Cum + Rural | Urban | 4269 1730 71.16 28.84 71.16 100.00 + Total | 5999 100.00 sum hhsize Variable | Obs Mean Std Dev Min Max -+ hhsize | 5999 4.752292 1.954292 19 gen new=hhsizet hhsizet not found r(111); 78 end of do-file r(111); Víi tuú chän nostop "c:\vlss98\chuong trinh 1", nostop clear set mem 32m (32768k) use "C:\VLSS98\Hhexp98n.dta", clear tab urban98 1:urban 98; | 0:rural 98 | Freq Percent Cum + Rural | 4269 Urban | 1730 71.16 28.84 71.16 100.00 + Total | 5999 100.00 sum hhsize Variable | Obs Mean Std Dev Min Max -+ hhsize | 5999 4.752292 1.954292 19 gen new=hhsizet hhsizet not found r(111); gen new=hhsize end of do-file Thùc hiƯn (ch¹y) b»ng lƯnh run run "c:\vlss98\chuong trinh 1", nostop hhsizet not found 79 C¸c do-file cã thĨ thùc hiƯn b»ng t chän Do thực đơn File, thực trực tiếp cưa sỉ Do-file editor b»ng t chän Do hc Run thực đơn Tool 1.3 Một số lu ý soạn thảo do-file version # Khi soạn thảo tệp do-file nên đa dòng lệnh vào đầu chơng trình để thông báo phiên Stata đợc dùng để soạn thảo do-file Ví dụ nh dùng Stata 7.0 để soạn thảo do-file câu lệnh đợc đa vào đầu chơng trình nh sau: version 7.0 clear use Hhexp98n.dta tab reg7 Các phiên Stata khác có khác cú pháp ý nghĩa câu lệnh Lệnh version cho phép chơng trình Stata chạy hiểu đợc nội dung tệp do-file đợc viết phiên khác set memory #[k|m] Nếu nh file số liệu đòi hỏi nhớ lớn nhớ mà Stata sử dụng phải thiết lập nhớ lớn cho Stata lệnh Chú ý không nên thiết lập nhớ lớn nhớ RAM máy tính Ví dô: use "C:\Hhexp98n.dta", clear no room to add more observations r(901); set mem 32m (32768k) use "C:\Hhexp98n.dta", clear set more of/on Theo chế độ ngầm định, thùc hiƯn mét lƯnh nÕu nh kÕt qu¶ cđa viƯc xử lý lệnh dài cửa sổ kết (Stata Results), hình dừng lại phải ấn phím (chẳng hạn Enter Space bar) để kết tiếp tục đợc hiển thị Lệnh set more of cho phép kết không bị dừng lại mà đợc hiển thị liên tục thực xong câu lệnh do-file Lệnh set more on khôi phục lại chế độ ngầm định Ký tự * /* */ 80 Stata không thực câu lệnh đợc bắt đầu ký tự * nằm hai nhóm ký tự /* */ Các ký tự dùng để viết thích dofile VÝ dô: -version 7.0 set mem 32m use "C:\Hhexp98n.dta", clear * Tao bien thu nhap cua ho gia dinh /* Bien bang Thu nhap binh quan nhan voi Quy mo ho*/ gen hhexp = rlpcex1 * hhsize #delimit ; Khi câu lệnh do-file editor dài dùng lệnh để thông báo câu lệnh đợc kết thúc ký tự (;) Theo chế độ ngầm định câu lệnh đợc kết thúc xuống dòng việc gõ phím Enter Để khôi phục lại chế độ ngầm định dùng lệnh #delimit cr Ví dụ: lệnh vẽ đồ thị chơng tríc: graph meanexp meanedu ahhsize, title (Do thi chi tieu va hoc van chu ho) l1title(Chi tieu binh quan (tr dong)) l2title(So nam hoc cua chu ho) b2title (Quy mo ho gia dinh) xlabel ylabel xline (5 10 to 20) yline(2 to 8) connect(ll) tuơng đơng với: #delimit ; graph meanexp meanedu ahhsize, title (Do thi chi tieu va hoc van chu ho) l1title(Chi tieu binh quan (tr dong)) l2title(So nam hoc cua chu ho) b2title (Quy mo ho gia dinh) xlabel ylabel xline (5 10 to 20) yline(2 to 8) connect(ll) ; gen hhexp = rlpcex1 * hhsize ; Sau nên khôi phục lại chế độ ngầm định nh câu lệnh sau viết dòng lệnh: #delimit cr Chó ý: - Chóng ta cã thĨ dïng ký tự /* */ để viết câu lệnh dài nh sau: 81 graph meanexp meanedu ahhsize, title (Do thi chi tieu va hoc van chu ho) /* */ l1title(Chi tieu binh quan (tr dong)) l2title(So nam hoc cua chu ho) /* */ b2title (Quy mo ho gia dinh) xlabel ylabel xline (5 10 to 20) yline(2 to 8) connect(ll); - Các lệnh # delimit cách viết câu lệnh dài sử dụng ký tự /* */ dùng đợc do-file không dùng đợc cửa sổ lệnh command Local global macros Macros biến đợc dùng chơng trình Stata Biến macros đợc xem nh đoạn ký tự - gọi macroname (tên macros) - tơng ứng với dÃy ký tự khác - đợc gọi macro contents (nội dung macro) Có hai loại macros local macros (macros néi bé) vµ global macros (macros toµn bé) 2.1 Local macros NÕu chóng ta gâ: local hogd “age hhsize rlpcex1 (Dấu nháy kép co thể bỏ qua, tức cã thĨ gâ: local hogd age hhsize rlpcex1) Khi ®ã `hogd đợc hiểu tơng đơng với: age hhsize rlpcex1 hogd đợc gọi tên macros, age hhsize rlpcex1 nội dung macros Để sử dụng néi dung cđa macros, chóng ta gâ tªn cđa macros dấu trích dẫn bên trái ( ) nằm phía bên trái bàn phím - dấu trích dẫn bên phải ( ) nằm phía phải bên dới bàn phím Nh gõ: summarize `hogd tơng ®¬ng víi gâ: summarize age hhsize rlpcex1 NÕu chóng ta gâ: local tb “summarize” th× chóng ta cã thĨ thùc hiƯn lƯnh summarize b»ng c¸ch gâ: age hhsize rlpcex1 `tb' `hogd' Variable | Obs Mean Std Dev Min Max -+ -82 age | 5999 48.01284 13.7702 hhsize | 5999 4.752292 1.954292 rlpcex1 | 5999 3188.667 2692.567 16 95 19 357.318 45801.71 §Ĩ hiển thị nội dung local macros gâ lƯnh macros list _(tªn local macros) VÝ dơ: macro list _hogd _hogd: age hhsize rlpcex1 Để xoá local macros dung lênh macros drop _(tªn local macros) VÝ dơ: macro drop _hogd macro list _hogd local macro `hogd' not found r(111); 2.2 Global macros NÕu chóng ta gâ: global diaban “reg7 province commune” (hc cã thĨ bá qua dÊu ngc kÐp: global diaban reg7 province commune) Khi $diaban tơng đơng với: reg7 province commune diaban đợc gọi tên macros, reg7 province commune nội dung macros Để sử dụng đợc nội dung global macros chóng ta gâ ký hiƯu $ liỊn tríc tªn cđa macros Nh vËy nÕu chóng ta gâ: describe $diaban tơng đơng với gõ: describe : reg7 province commune describe $diaban storage display value variable name type format label variable label reg7 int %8.0g Code by regions province float %9.0g Province code commune float %9.0g commune code PSU-SVY commands 83 global mota "describe" $mota $diaban storage display value variable name type format label variable label reg7 int %8.0g Code by regions province float %9.0g Province code commune float %9.0g commune code PSU-SVY commands §Ĩ hiĨn thị nội dung global macros gõ lƯnh macros list (tªn global macros) VÝ dơ: global diaban "reg7 province commune" macro list diaban diaban: reg7 province commune Để xoá global macros có thĨ dïng lƯnh macros drop (tªn local macros) VÝ dơ: macro drop diaban macro list diaban global macro $diaban not found r(111); 2.3 Sự khác local macros global macros Local macros tồn chơng trình Một chơng trình không hiểu đợc local macros đợc sử dụng chơng trình khác Trong đó, đà đợc khai báo, global macros đợc hiểu tất chơng trình tồn nhớ Stata suốt trình hoạt động Ví dụ: Thực đoạn chơng trình khai báo local macros a Sau thực lệnh hiển thị nội dung local macros này, nhng macros không tồn đoạn chơng trinh khác hay ë bé nhí cđa Stata "C:\WINDOWS\TEMP\STD010000.tmp" local a "chuong trinh thong ke Stata" end of do-file 84 macro list _a local macro `a' not found r(111); Trong ®ã ®èi víi global macros "C:\WINDOWS\TEMP\STD010000.tmp" global b "chuong trinh thong ke Stata" end of do-file macro list b b: chuong trinh thong ke Stata Tích vô hớng ma trận (scalar and matrix) 3.1 Ma trận (matrix) Stata định nghĩa ma trận A[r, c] mảng hình chữ nhật gåm r hµng (row) vµ c cét (column) VÝ dơ: Nếu ma trận A đà đợc tạo cã thĨ xem néi dung cđa ma trËn ®ã nh sau: matrix list A A[3,3] c1 c2 c3 r1 r2 r3 10 11 14 ma trận A bao gồm phÇn tư (element): 1, 2, 4, 3, 4, 7, 10, 11, 14 Các cột đợc đặt tên c1, c2, c3, hàng r1, r2, r3 Phần tử giao điểm dòng cột đợc ký hiệu A[1, 2] Trong ví dụ A[1, 2] chứa giá trị 3.2 Tích vô hớng (scalar) Tích vô hớng chứa phần tử số Tích vô hớng đợc định nghĩa lệnh sau: scalar scalar_name = expression VÝ dô: scalar a = 10 scalar list a 85 a = 10 scalar b = a* scalar list b b= 20 Trong chừng mực đó, tích vô hớng xem nh trờng hợp đặc biệt ma trận có phân tử (một hàng mét cét) 3.3 Mét sè lƯnh lµm viƯc víi ma trận Thiểt lập kích thớc ma trận Gia trị ngầm định kích thớc ma trận tối đa 40 hàng 40 cột Chúng ta thay đổi kích thớc tối đa lệnh: set matsize 500 Lệnh cho phép ma trận đợc tạo cã thĨ bao gåm 500 hµng vµ 500 cét T¹o ma trËn Ma trËn cã thĨ t¹o b»ng câu lệnh trực tiếp Ví dụ: matrix mymat (1,2\3,4) = Các phần tử đợc phân biệt dấu phẩy, hàng đợc phân biệt dấu gạch chéo matrix myvec = (1 3) matrix mycol (1/5/3/1/3) Tạo véctơ hàng = Tạo véctơ cột Ma trận đợc tạo từ số liệu lệnh: mkmat [điều kiện] [phạm vi] [, matrix(tªn ma trËn) ] VÝ dơ: input maho quymo thunhap maho quymo thunhap 101 1200 103 1400 105 3200 107 1000 109 2500 end 86 mkmat maho quymo thunhap, matrix(A) matrix list A A[5,3] maho quymo thunhap r1 101 1200 r2 103 1400 r3 105 3200 r4 107 1000 r5 109 2500 TÝnh to¸n ma trËn matrix D =B T¹o ma trËn D b»ng ma trËn B matrix C = (C+C)/2 Tính lại ma trận C dựa giá trị của matrix D = A*A Tạo ma trËn D b»ng tÝch ma trËn A vµ ma trận chuyển vị A Xoá ma trận Ma trận tích vô hớng xoá khỏi nhớ b»ng lƯnh: matrix drop scalar drop VÝ dơ: matrix drop A scalar drop B Lệnh điều kiện vòng lặp 4.1 Lệnh ifelse Cú pháp: điều kiện (điểu kiện logic) { Nhóm c©u lƯnh } else C©u lƯnh Stata sÏ kiĨm tra điều kiện logic (expression), điều kiện lệnh Nhóm câu lệnh đợc thực hiện, điều kiện sai lệnh đằng sau else đợc thực hiện, trờng hợp else không đợc Stata thực lƯnh sau lƯnh if {…} VÝ dơ: 87 local a=invnorm(uniform()) if `a'>=0 { display "So ngau nhien tao lon hon hoac bang 0" } else di "So ngau nhien tao nho hon 0" macro list _a Chó ý: - Sư ký hiƯu { } cho phÐp viÕt nhiỊu c©u lƯnh sau else ®iỊu kiƯn (®iĨu kiƯn) { commands } else { comands } - C¸c lƯnh if…else cã thể đợc sử dụng lồng với điều kiện (điểu kiện) { Nhóm câu lệnh } else điều kiện (điều kiện) { 4.2 Lệnh while Cú pháp: while { Nhóm câu lệnh } Stata kiểm tra điều kiện logic (expression), điều kiện lệnh Nhóm câu lệnh đợc thực hiện, điều kiện sai lệnh không đợc thực Ví dụ: local i=1 while `i’

Ngày đăng: 02/09/2022, 15:13

Tài liệu cùng người dùng

Tài liệu liên quan