Mục tiêu: Sau khi học xong, học viên có khả năng thực hiện được các thao tác: − Mở và lưu dữ liệu bằng nhiều phương pháp trong Stata. − Nhập và xuất dữ liệu bằng phần mềm Stata. − Chuyển đổi dữ liệu từ các phần mềm khác sang phần mềm Stata.
Trang 11
THAO TÁC QUẢN LÝ VÀ BIẾN ĐỔI SỐ LIỆU
Ths Huỳnh Ngọc Vân Anh
Mục tiêu:
Sau khi học xong, học viên có khả năng thực hiện được các thao tác:
− Mở và lưu dữ liệu bằng nhiều phương pháp trong Stata
− Nhập và xuất dữ liệu bằng phần mềm Stata
− Chuyển đổi dữ liệu từ các phần mềm khác sang phần mềm Stata
1 Giới thiệu:
Như những nội dung trước đã giới thiệu thì Stata là một phần mềm thống kê có thể sử dụng
để nhập liệu, xuất số liệu và quản lý dữ liệu bằng nhiều cách khác nhau Thêm nữa, chúng ta
có thể sử dụng nhiều cách để thực hiện lệnh trong Stata, đó là sử dụng thanh công cụ đồ họa
và gõ lệnh trực tiếp vào cửa sổ lệnh
Chúng ta đã biết giao diện chính của Stata có các cửa sổ quan trọng bao gồm cửa sổ biến số (Variable), cửa sổ kết quả (Result), cửa sổ lệnh (Command) và cửa sổ lưu trữ lệnh (Review) Đối với mỗi cửa sổ thì lại có các cách lưu trữ khác nhau Cụ thể là với cửa sổ Variable thì sẽ
lưu file dưới dạng “.dta”, cửa sổ Review sẽ lưu dưới dạng file “.do” và cửa sổ Result sẽ lưu dưới dạng file “.smcl” hoặc lưu thông qua word với file “.doc” hay “.docx” Tùy vào mục
tiêu lưu trữ của người dùng mà sẽ có các hình thức lưu file khác nhau và đối với các file như
.do hay smcl thì chỉ có thể đọc được bằng phần mềm Stata mà thôi
2 Mở và lưu dữ liệu bằng phần mềm Stata:
2.1 Sử dụng đường dẫn vào thư mục hiện hành:
Thông thường chúng ta sẽ sử dụng chức năng open để mở file số liệu và chúng ta dùng con trỏ chuột chọn vào thư mục rồi chọn vào file cần mở và yêu cầu Stata mở dữ liệu Chúng ta thường sử dụng cách như sau:
use “Ổ đĩa :\ folder chứa tập tin dữ liệu \ Tập tin dữ liệu”, clear
use “D:\ Data \ vidu.dta”, clear
Tuy nhiên, nếu trong quá trình sử dụng Stata chúng ta muốn mở nhiều file dữ liệu liên tiếp
mà các file này cùng nằm chung trong 1 thư mục thì chúng ta nên sử dụng cách là đưa đường dẫn mở file vào thư mục hiện hành và mỗi lần mở file dữ liệu khác thì chúng ta chỉ cần gõ tên file dữ liệu cần mở, chứ không cần nhắc lại thư mục chứa file Cách này sẽ tiết kiệm được thời gian so với cách mở file thông thường
Trang 2Chúng ta đưa đường dẫn vào thư mục hiện hành bằng cách khai báo cho Stata biết thư mục hiện hành nằm ở đâu trong ổ đĩa của máy tính chúng ta
Nguyên tắc lệnh này là:
cd “Ổ đĩa :\ Thư mục hiện hành chứa tập tin dữ liệu”
Ví dụ, chúng ta khai báo với Stata thư mục hiện hành chứa nhiều tập tin mà chúng ta chuẩn bị
sử dụng trong quá trình phân tích là ổ đĩa D, thư mục Data Khi đó, chúng ta sẽ thực hiện
lệnh là cd “D :\ DATA”
Sau đó, chúng ta sẽ dùng lệnh để mở các file dữ liệu bằng cách use “File số liệu.dta”, ví dụ
use “ivf.dta”
Giả sử sau khi phân tích xong tập tin dữ liệu “ivf.dta”, sau đó lại phân tích tiếp dữ liệu khác
như file dữ liệu chilumba thì chúng ta dùng tiếp lệnh use “chilumba.dta” Nếu chúng ta tiếp tục mở tập tin khác thì chúng ta tiếp tục dùng lệnh use “tlsosinh.dta”
2.2 Lưu số liệu:
Khi sử dụng Stata để phân tích số liệu thì Stata sử dụng bộ nhớ tạm thời đối với các thao tác biến đổi số liệu như nhập liệu, chỉnh sửa số liệu, mã hóa lại biến số, tạo biến mới, tạo nhãn và dán nhãn Các dữ liệu thay đổi sẽ được lưu trữ tạm thời trong bộ nhớ của Stata Nếu chúng ta muốn Stata lưu trữ lại những dữ liệu thay đổi thì chúng ta phải sử dụng chức năng lưu của Stata bằng lệnh save Nếu chúng ta không thực hiện việc lưu trữ bằng lệnh save thì Stata chỉ tạm lưu trữ dữ liệu thay đổi và việc tạm thời này sẽ ngừng khi chúng ta thoát khỏi Stata và dĩ nhiên những thao tác biến đổi số liệu sẽ không được Stata lưu
Chúng ta có thể xem qua quy trình thao tác dữ liệu như sau:
Cách tốt nhất trong quá trình biên tập số liệu là sau khi thực hiện các thao tác biến đổi số liệu thì nên lưu số liệu vừa thay đổi bằng 1 tên tập tin khác và file dữ liệu gốc vẫn được giữ nguyên vẹn
2.3 Mở tập tin có điều kiện:
a Mở tập tin dữ liệu với tùy chọn if:
File gốc “file_a.dta” Data trong bộ nhớ tạm
Dữ liệu thay đổi File mới “file_b.dta”
use “file_a.dta”
save “file_b.dta”
Trang 3Thông thường chúng ta sẽ sử dụng chức năng mở dữ liệu bằng lệnh use Đôi khi chúng ta lại
muốn mở dữ liệu với một số điều kiện đi kèm, khi đó chúng ta sẽ sử dụng tùy chọn if hoặc in Ví
dụ, chúng ta muốn mở tập tin dữ liệu ivf.dta trong đó chỉ chọn những trẻ trai để phân tích Khi
đó, chúng ta sẽ dùng câu lệnh như sau:
use “ivf.dta” if sex==1
Hoặc nếu muốn mở tập tin với dữ liệu chỉ toàn những trẻ gái thì chúng ta dùng lệnh:
use “ivf.dta” if sex==0
Hoặc muốn sử dụng điều kiện là chọn những trẻ gái con của những bà mẹ <30 tuổi thì chúng ta dùng lệnh:
use “ivf.dta” if sex == 0 & matage <30
Vậy, với tùy chọn if thì chúng ta có thể đưa ra các điều kiện đi kèm trong quá trình mở tập tin dữ
liệu
b Mở tập tin dữ liệu với tùy chọn in:
Bên cạnh tùy chọn if dùng làm điều kiện để mở tập tin dữ liệu thì tùy chọn in cũng có thể sử dụng làm điều kiện để mở dữ liệu Tuy nhiên, tùy chọn in bị giới hạn hơn so với if vì tùy chọn in dựa vào thứ tự hàng được mặc định trong Stata, còn tùy chọn if thì có thể đưa ra các điều kiện đi
kèm tùy ý người dùng
Ví dụ như chúng ta muốn mở tập tin dữ liệu có 100 người như sau: use “ivf.dta” in 1/100 Câu
lệnh này sẽ sử dụng tập tin ivf.dta và chọn 100 người ở 100 hàng đầu tiên của dữ liệu
c Mở tập tin dữ liệu với các tùy chọn khác:
Giả sử muốn chọn lọc một vài biến số trong tập tin dữ liệu đã có sẵn, khi đó chúng ta có nhiều cách là dùng lệnh use hoặc dùng lệnh keep hay lệnh drop
Nguyên tắc dùng lệnh use như sau: use biếnsố using “data.dta”
Ví dụ cụ thể như muốn mở tập tin ivf.dta gồm các biến như matage, sex, bweight thì chúng ta
dùng lệnh là:
use matage sex bweight using “ivf.dta”
Nguyên tắc dùng lệnh keep như sau: keep biếnsố Ví dụ keep matage sex bweight Tuy nhiên
trước khi sử dụng lệnh keep thì phải dùng lệnh use để mở toàn bộ số liệu, sau đó mới dùng lệnh keep để giữ lại các biến số cần thiết
Chức năng của lệnh drop sẽ tương tự lệnh keep, tức là loại bỏ một số biến và giữ lại những biến
cần thiết Nguyên tắc của lệnh này là drop biếnsốcầnbỏ Giả sử trong tập tin ivf.dta có 6 biến số
gồm id, matage, ht, gestwks, sex và bweight Muốn giữ lại biến matage, sex và bweight thì phải
dùng lệnh drop để xóa các biến còn lại, cụ thể là drop id ht gestwks sex
Trang 43 Nhập dữ liệu trực tiếp bằng phần mềm Stata:
Có nhiều cách nhập dữ liệu trực tiếp bằng phần mềm Stata Trong nội dung này giới thiệu các cách bao gồm:
- Input bằng cửa sổ lệnh Command
- Nhập bằng Data Editor
3.1 Nhập bằng lệnh input:
Chúng ta có thể sử dụng lệnh input để nhập số liệu trực tiếp vào Stata Đầu tiên chúng ta liệt kê tất cả tên biến sẽ được sử dụng để nhập vào, sau đó chúng ta tiến hành việc nhập liệu Lưu ý rằng đối với biến dạng chuỗi thì phải dùng dấu ngoặc kép “ ” để chương trình nhận biết và phân biệt những giá trị trong dấu này là dạng chuỗi Ví dụ như chúng ta muốn nhập 3 cột gồm họ tên, cân nặng và chiều cao thì chúng ta tiến hành như sau:
clear
input str20 hoten cannang chieucao
“Huynh Van A” 50 155
“Doan Thi H” 48 154
“Nguyen Lam V” 51 157
end
Lệnh clear là để xóa những dữ liệu trước đó, lệnh input là bắt đầu đưa dữ liệu được liệt kê bên dưới vào và lệnh end là để kết thúc việc nhập liệu
3.2 Nhập bằng Data Editor:
Ngoài cách nhập trực tiếp bằng lệnh input thì thông thường người dùng hay sử dụng cách nhập thông qua cửa sổ Data Editor Vì cách này giúp người dùng dễ dàng nhận thấy số liệu được nhập vào thông qua các hàng và các cột, đồng thời cách nhập liệu này cũng dễ dàng như nhập bằng excel Hướng dẫn về cách sử dụng cửa sổ Data Editor đã được trình bày trong nội dung của bài
trước (xin xem bài Hướng dẫn sử dụng phần mềm Stata)
Tuy nhiên, chúng ta cũng có thể sử dụng cửa sổ command để thực hiện nhập bằng cách dùng lệnh gen và lệnh replace như sau:
clear
gen hoten = “”
replace hoten = “Huynh Van A” in 1
replace hoten = “Doan Thi H” in 2
replace hoten = “Nguyen Lam V” in 3
Trang 5replace cannang = 48 in 2
replace cannang = 51 in 3
gen chieucao =
replace chieucao = 155 in 1
replace chieucao = 154 in 2
replace chieucao = 157 in 3
Từ những chức năng nhập liệu của Stata được giới thiệu ở những nội dung trên thì người dùng nên tùy thuộc vào từng biến số và nghiên cứu của cá nhân để chọn lựa việc nhập liệu phù hợp Hạn chế của việc nhập liệu trực tiếp bằng Stata là Stata không thực hiện các chức năng quản lý việc nhập liệu như phần mềm Epidata
3.3.Nhập bằng Epidata:
Phần mềm Epidata có chức năng dùng để quản lý việc nhập liệu với các đặc tính như sau:
- Kiểm tra các giá trị trong quá trình nhập liệu
- Giới hạn phạm vi nhập liệu
- Cho phép nhảy câu
- Ràng buộc dữ kiện chặt chẽ
- Nhập đôi số liệu và kiểm tra lẫn nhau
- Cho phép xuất số liệu sang nhiều phần mềm thống kê
Hướng dẫn cụ thể của việc nhập liệu bằng Epidata xin được trình bày ở chương khác
4 Chuyển đổi dữ liệu từ những phần mềm khác sang Stata hoặc ngược lại:
Đôi khi người mới sử dụng Stata không quen với cách nhập liệu trực tiếp vào Stata mà nhập liệu thông qua những phần mềm khác như Excel, Ascess, SPSS, SAS hoặc Epidata, sau đó chuyển file dữ liệu đã nhập sang Stata để xử lý Có nhiều cách để chuyển đổi dữ liệu, một trong những cách đó là dùng lệnh import để nhập dữ liệu vào Stata và lệnh export là để xuất dữ liệu từ Stata sang phần mềm khác
4.1 Nhập liệu bằng lệnh Import:
Đường dẫn bằng thanh công cụ để thực hiện chức năng nhập liệu vào Stata là: File > Import >
Excel sreadsheet (*.xls; *.xlsx) Sau đó đưa tên file cần chuyển vào cửa sổ Excel file và chọn sheet sẽ sử dụng để chuyển đổi số liệu
Trang 6Hoặc gõ lệnh trực tiếp vào cửa sổ Command như sau:
import excel “vd.xlsx”, sheet(“Sheet1”) firstrow
Lưu ý rằng nên chọn sheet tương ứng trong File Excel “vidu.xlsx” với tùy chọn là hàng đầu tiên của sheet chứa tên biến
4.2 Xuất dữ liệu bằng lệnh Export:
Từ phần mềm Stata có thể chuyển dữ liệu sang các phần mềm khác như từ phần mềm khác
chuyển qua Stata Đường dẫn bằng thanh công cụ đồ họa là File > Export > Data to Excel
sreadsheet (*.xls; *.xlsx) Cách thực hiện như hình bên dưới:
Hoặc gõ lệnh trực tiếp vào cửa sổ Command như sau:
export excel using “new.xlsx”, firstrow(variables) nolabel
Câu lệnh này sẽ tạo ra tập tin new.xlsx với hàng thứ nhất là tên biến số và không dán nhãn cho
các giá trị của biến số mà giữ nguyên giá trị gốc của từng biến số có trong file dữ liệu của Stata
4.3 Chuyển đổi dữ liệu bằng phần mềm Stat/Transfer:
Trang 7mềm này thì người dùng phải có chương trình cài đặt và thực hiện các thao tác cài đặt phần
mềm Sau khi cài đặt xong thì phần mềm này cũng nằm trong Medistat Khởi động phần mềm Stat Transfer bằng cách chọn Start > All Programs > Medistat > Stat Transfer Sau đó chọn
phần mềm trong cửa sổ Input và chọn tên file của phần mềm muốn dùng để chuyển đổi Ở cửa
sổ Output thì chọn Stata/SE và đặt tên ở đường dẫn tương thích
Lưu ý rằng khi người dùng chuyển đổi dữ liệu qua lại giữa các phần mềm thì cần cẩn thận đối với định dạng của biến số, đặc biệt là các kiểu dữ liệu dạng chuỗi hay dạng văn bản và không dùng dấu tiếng Việt trong các dữ liệu liên quan đến Stata
Tài liệu tham khảo:
1 Đỗ Văn Dũng (2012) Phương pháp nghiên cứu khoa học với phần mềm Stata, Tài liệu lưu
hành nội bộ
2 Svend Juul, Morten Frydenberg (2014) An introduction to Stata for Health Researchers