Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.93 MB, 167 trang )
Copyright (C) 1985-2003
Total physical memory: 261616 KB
Available physical memory: 37056 KB
Single-user Stata for Windows perpetual license:
Serial number: 196201410
Licensed to: Do Van Dung
Univ of Medicine & Pharm
Như vậy, chúng ta đang sử dụng Stata Phiên bản đặc biệt 8.0 cho Windows.
96
Mô tả ngắn gọn về Stata
Stata là một bộ phần mềm thống kê để quản lí, phân tích và vẽ đồ thị của số liệu.
Stata có thể chạy trên nhiều hệ điều hành nhưng bất kể ở hệ điều hành nào, Stata c ó thể cho
phép điều khiển bởi dòng lệnh (command-driven) và điều khiển bằng menu (menu-driven)khác
với SPSS chỉ được phép điều khiển bằng menu (menu-driven). Sau đây là một đoạn sử dụng
Stata với
. use "C:\Program Files\STATA8\auto.dta", clear
. summarize mpg weight
Variable |
Obs
Mean
Std. Dev.
Min
Max
---------+----------------------------------------------------mpg |
74
21.2973
5.785503
12
41
weight |
74
3019.459
777.1936
1760
4840
Ở đây người dùng gõ vào summarize mpg weight và Stata trả lời bằng một bảng thống kê mô
tả. Một số lệnh khác có thể tạo ra kết quả khác:
. correlate mpg weight
(obs=74)
|
mpg
weight
---------+-----------------mpg |
1.0000
weight | -0.8072
1.0000
. gen w_sq=weight^2
. regress mpg weight w_sq
Source |
SS
df
MS
---------+-----------------------------Model | 1642.52197
2 821.260986
Residual | 800.937487
71 11.2808097
---------+-----------------------------Total | 2443.45946
73 33.4720474
Number of obs
F( 2,
71)
Prob > F
R-squared
Adj R-squared
Root MSE
=
=
=
=
=
=
74
72.80
0.0000
0.6722
0.6630
3.3587
mpg |
Coef.
Std. Err.
t
P>|t|
[95% Conf. Interval]
---------+-------------------------------------------------------------------weight | -.0141581
.0038835
-3.646
0.001
-.0219016
-.0064145
w_sq |
1.32e-06
6.26e-07
2.116
0.038
7.67e-08
2.57e-06
_cons |
51.18308
5.767884
8.874
0.000
39.68225
62.68392
Số liệu của Stata, tương tự như của phần lớn các phần mềm thống kê khác, được mô tả dưới
dạng là một bảng với các hàng là các đối tượng và các cột là các biến số:
. list mpg weight in 1/10
mpg
weight
1.
22
2,930
2.
17
3,350
3.
22
2,640
4.
20
3,250
5.
15
4,080
6.
18
3,670
7.
26
2,230
97
8.
9.
10.
20
16
19
3,280
3,880
3,400
Trong đó các quan sát được đánh số và các biến số được đặt tên (như mpg, weight, v.v)
Stata có đặc điểm là chạy rất nhanh. Tốc độ nhanh một phần là do chương trình được viết hết
sức khôn khéo và một phần là do Stata giữ số liệu trong bộ nhớ. Tương tự như winword: khi làm
vieej số liệu được nạp vào trong bộ nhớ và được phân tích, biến đổi mà không ảnh hưởng gì đến
số liệu được giữ trong đĩa cứng. Do đó chúng ta có thể thoải mái làm việc mà không sợ bị ảnh
hưởng lên số liệu gốc trừ khi chúng ta ra lệnh cho Stata ghi số liệu trở lại vào đĩa.
Do số liệu được đưa vào bộ nhớ nên kích thước của số liệu bị giới hạn bởi kích thước bộ nhớ.
Do đó khi chúng ta làm việc với số liệu có kích thước lớn chúng ta cần dành nhiều bộ nhớ cho
Stata. Thông thường 32 megabyte bộ nhớ được dành cho Stata và ta có thể tăng lượng bộ nhớ
dành cho Stata bằng cách dùng lệnh set memory. Nếu chúng ta muốn dành cho Stata 64
megabyte hãy gõ: set memory 64m
Nếu muốn chúng ta có thể biết được lượng bộ nhớ tự do bằng cách gõ vào: memory. Để Stata
có thể hoạt động tối ưu, sau khi đã nạp số liệu nên còn khoảng 1 megabyte bộ nhớ tự do.
98
Lệnh more
1. Mô tả
Khi chúng ta gõ một câu lệnh và Stata có một câu trả lời dài quá một cửa sổ màn hình chúng ta
sẽ thấy—more-- ở cuối màn hình. Khi đó chúng ta có thể:
• Gõ phím trắng để xem câu trả lời ở màn hình kết tiếp
• Gõ l (chữ el-lờ) hay Enter để xem dòng tiếp
• Gõ q để ngưng hiện ra câu trả lời --Break-• more—là cách của Stata để cho biết rằng nó còn tiếp tục trả lời nhưng nó cũng có ý là nói
còn có những thông tin khác để đẩy các thông tin có sẵn trên màn hình đi.
Nếu chúng ta gõ set more off thì—more—sẽ không bao giờ hiện ra và câu trả lời của Stata sẽ
trôi nhanh hết tốc độ. Nếu chúng ta gõ lại set more on thì—more—sẽ được phục hồi trở lại.
Trong do-file chúng ta thường sử dụng lệnh set more off bởi vì chúng ta không quan tâm đến sự
tương tác với kết quả và muốn Stata thực hiện càng nhanh càng tốt nhằm kết quả được đưa vào
log-file và file này sẽ được đọc sau. Trong do file nếu chúng ta muốn chương trình dừng tại một
nơi nào đó, chúng ta có thể thêm lệnh more vào chương trình. Khi chương trình gập lệnh này
nó sẽ dừng lại và đợi chúng ta đánh Enter, phím trắng hay q dù rằng cửa số kết xuất có đầy hay
chưa.
99
Thông báo lỗi và mã phản hồi
1. Lỗi
Khi có một lỗi xảy ra, Stata tạo ra một thông báo lỗi và một mã trả về. Thí du:
. list myvar
no variables defined
r(111);
Chúng ta yêu cầu Stata liệt kê giá trị của biến myvar. Stata trả lời bằng thông báo “no variables
defined” và dòng thông báo “r(111)”
“no variables defined” là thông báo lỗi (error message).
111 được gọi là mã trả về (return code).
Trong chế độ tương tác, tất cả các lỗi đều được tha thứ. Nghĩa là sau khi ra thông báo lỗi và mã
trả về, Stata xem như lỗi chưa hề xảy ra.
Trong chế độ chương trình khi có một lỗi xảy ra, do-file sẽ ra thông báo lỗi và mã trả về đồng
thời với việc ngưng thực hiện ngay lập tức.
Thí dụ, xem do-file sau đây:
------------------------------------------------- đầu của myfile.do---------------use auto
decribe
list
------------------------------------------------- cuối của myfile.do---------------
Lưu ý dòng số hai - chúng ta muốn mô tả (describe) nhưng lại gõ sai là decribe. Sau đây là
những gì xảy ra khi chúng ta thực hiện do-file bằng cách gõ do myfile:
(1978 Automobile Data)
. do myfile
. use auto
(1978 Automobile Data)
. decribe
unrecognized command:
r(199);
decribe
Decribe tạo ra thông báo lỗi và mã trả về 111. Điều này sẽ làm chấm dứt việc thực hiện do-file
và khi đó lệnh list (dù rằng đúng) vẫn không được thực hiện.
2. Bỏ qua lỗi lầm trong lập trình
Thí dụ một câu lệnh có thể là đúng trong một tập số liệu A nhưng lại là sai ở một tập số liệu B.
Và những lỗi như vậy có thể được tiên liệu từ trước: Trong trường hợp đó nếu câu lệnh không
lỗi thì chúng ta cứ tiếp tục, nếu có lỗi thì chúng ta mở tập số liệu A ra.
Như vậy người lập trình có thể yêu cầu Stata không ra thông báo lỗi bằng cách dùng lệnh
capture. Nhờ có thể đọc trực tiếp mã trả về và biết có lỗi xảy ra hay không và lỗi gì, lập trình
viên có thể có những hành động thích hợp.
3. Mã trả về để biết thời gian tính toán
Ngoài thông báo lỗi và mã trả về, Stata còn có thể có thông báo trả về (return message) cho biết
thời gian thực hiện một lệnh và thời điểm lệnh đó hoàn thành. Thông thường thì Stata không
cung cấp thông báo trả về trừ khi chúng ta yêu cầu bằng lệnh set rmsg on.
Thí dụ nếu bạn gõ sum mpg, bạn sẽ thấy
. sum mpg
100
Variable |
Obs
Mean
Std. Dev.
Min
Max
---------+----------------------------------------------------mpg |
74
21.2973
5.785503
12
41
Nếu chúng ta đã gõ lệnh ở đâu đó trong chương trình
. set rmsg on
thì Stata sẽ trình bày thông báo trả về như sau:
. sum mpg
Variable |
Obs
Mean
Std. Dev.
Min
Max
---------+----------------------------------------------------mpg |
74
21.2973
5.785503
12
41
r; t=0.11 7:52:45
Dòng “r; t=0.11 7:52:45” là thông báo trả về cho biết thời gian Stata thực hiện lệnh này là 0,11
giây và lệnh này hoàn thành lúc 7 giờ 52 sáng.
Nếu chúng ta không muốn xuất hiện thông báo trở về nữa, chúng ta hãy gõ:
. set rmsg off
101