Hướng dẫn sử dụng Epidata 3.1 của Vũ Huy Nhất

16 1.5K 9
Hướng dẫn sử dụng Epidata 3.1 của Vũ Huy Nhất

Đ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

Giới thiệu khái quát và hướng dẫn sử dụng phần mềm Epidata 3.1 để xây dựng bộ nhập liệu. Ưu điểm của bài hướng dẫn là có hình ảnh trực quan và một số lệnh nâng cao như xây dựng phần nhập cho câu hỏi nhiều lựa chọn.

Vũ Huy Nhất – vhn1511@gmail.com 1 HƯỚNG DẪN SỬ DỤNG EPIDATA 3.1 1. Mục tiêu Làm được việc khai báo và tạo check cho biến của bộ câu hỏi điều tra định lượng. 2. Nhập đề * Nhập số liệu từ phiếu/bộ câu hỏi điều tra vào máy tính là một giai đoạn của một quá trình nghiên cứu. Vì vậy người thiết kế chương trình nhập liệu (Bao gồm khai báo và tạo check cho các biến) phải hiểu nội dung nghiên cứu, các chỉ số của nghiên cứu và dữ liệu phân tích (Gồm tệp số liệu, bản ghi, biến, kiểu dữ liệu) là như thế nào. * Việc khai báo, tạo check cho các biến của bộ câu hỏi phải đảm báo yêu cầu sau: - Với số liệu: Đảm bảo chính xác, đầy đủ, logic của thông tin. - Với nhập liệu viên: Giao diện thân thiện (đẹp về hình thức, dễ hiểu về nội dung trình bày), dễ nhập, nhanh chóng (loại bỏ các thao tác thừa). *Giao diện và các file chính được tạo bởi Epidata Tệp .QES Tệp .REC Tệp .CHK - Khai báo bộ câu hỏi ( ). - . - Là nguồn để sinh tệp .REC - Chứa dữ liệu - Sinh ra từ tệp QES - Chứa mã nguồn thực thi các ràng buộc nhằm hạn chế lỗi số liệu - Luôn đi kèm với một tệp REC tương ứng 3. Khai báo và tạo check cho biến 3.1 Khai báo các biến với Epidata Bước 1: Xác định chuỗi định dạng cho các câu hỏi/mục thông tin trên phiếu điều tra. - Câu hỏi đó là nhiều lựa chọn hay một lựa chọn Vũ Huy Nhất – vhn1511@gmail.com 2 - Nó là câu hỏi/mục thông tin dạng chữ (Text) hay dạng số (Numberic) hay ngày/tháng/năm. Với kiểu dữ liệu dạng số hoặc dạng chữ xác định độ lớn của các ký tự mà biến đó có thể nhận. * Bảng: Các chuỗi định dạng dữ liệu hay dùng Chuỗi định dạng Giải thích <IDNUM> - Dạng số được EpiData sinh tự động khi nhập, giá trị của biến này tương ứng số thứ tự của bản ghi bản ghi được nhập vào chương trình. # - Trường số: “numberic” ____ - Sử dụng khai báo cho dữ liệu dạng chữ hoặc số - Độ rộng lớn nhất là 80 ký tự (Gạch dưới: _) <A > - Trường chữ: “String” - Chữ được viết hoa - Sau “A” bấy nhiêu lần cách là bấy nhiêu ký tự <dd/mm/yy> hoặc <dd/mm/yyyy> <Today-dmy> - Khai báo ngày, tháng, năm - Hiển thị theo ngày trên “đồng hồ máy tính” khi nhập liệu Bước 2: Tạo một file .QES để khai báo và bộ cục giao diện nhập liệu. hoặc Ctrl + S hoặc để lưu tệp . QES trong ổ cứng máy tính. Khai báo các thông tin của phiếu điều tra ở tệp QES. Bằng việc đánh máy tay nếu chỉ có bản giấy của phiếu điều tra hoặc “copy – pase” nếu có bản điện tử của phiếu điều tra. Ở đây có một vài lưu ý: Lưu ý thứ nhất: Do EpiData giới hạn khai báo với 1000 dòng, nếu mà phiếu điều tra vượt quá giới hạn này chúng ta cần tách ra thành nhiều tệp nhập liệu cho từng phần thông tin khác nhau. Còn việc liên kết các tệp dữ liệu này với nhau sẽ giới thiệu trong phần check nhập liệu Lưu ý thứ 2: Do EpiData không hỗ trợ chuẩn Unicode mà chỉ hỗ trợ chuẩn TCVN3 nên muốn hiện thị tiếng việt phải sử dụng font của TCVN3 khi khai báo (Font chữ có “.vn….” ở đầu). Và lựa chọn lại Font TCVN3 hiển thị ở File/Options/Editor và File/Options/Show data form Vũ Huy Nhất – vhn1511@gmail.com 3 Lưu ý thứ 3: Thủ thuật “copy – pase”: Copy từ phiếu điều tra được thiết kế trên Word  Pase vào tệp QES  Bố cục lại giao diện, từ khóa, xóa bỏ lưu ý chỉ dẫn/lưu ý của phiếu điều tra  Tên biến+kiểu dữ liệu+độ dài ký tự của biến. Nếu phiếu điều tra trên word bố cục nằm trong bảng cứ copy all vào QES và sau khi “tắt  bật lại” thì sẽ mất bảng/table. Nếu phiếu điều tra trên word ở sử dụng chuẩn unicode thì hãy sử dụng chức năng chuyển chuẩn Unicode sang TCVN3 của chương trình gõ font tiếng việt Unikey để chuyển. Với thao tác copy all thông tin trên word  Lựa chọn theo bảng dưới  pase vào QES. Lưu ý thứ 4: Đặt tên biến trùng với tên và số thứ tự của câu hỏi/đề mục trên phiếu điều tra. Điều này giúp cho việc tiện theo dõi, phân tích, đối chiếu khi sửa số liệu sau 2 lần nhập và phân tích dữ liệu sau này. 3.2. Tạo file .REC để nhập liệu Vũ Huy Nhất – vhn1511@gmail.com 4 3.3. Tạo file .CHK để tạo sự giàng buộc số liệu khi nhập liệu 3.3.1 Giao diện và tính năng Vũ Huy Nhất – vhn1511@gmail.com 5 3.3.2 Một số dòng lệnh check hay dùng Bảng: Một số check hay dùng Dòng lệnh Giải thích ý nghĩa Ví Dụ BEFORE ENTRY - Trước khi nhập - Hàng dưới của nó phải hàm chứa một điều kiện nào đó BEFORE ENTRY <command> <command> END AFTER ENTRY - Sau khi nhập - Hàng dưới của nó phải hàm chứa một điều kiện nào đó AFTER ENTRY <command> <command> END TOPOFSCREEN - Tạo trường nhập để gán giá trị sau khi nhập cho biến khác. HIDE/UNHIDE - Ẩn biến hoặc không ẩn biến khi có một điều kiện nào đấy - IF …… THEN Các hàm điều kiện AND Và/đồng thời OR Hoặc <> Khác > Lớn hơn < Nhỏ hơn + Cộng - Trừ * Nhân / chia HELP « thông báo muốn hiển thị » - Khi nhập giá trị nào đó vào muốn “Thông báo hiện thị nào đó” vi dụ - -Nhắc nhở khi nhập không đúng Unhide/hide - Ẩn/hiện biến nào đấy id KEY UNIQUE 1 CONFIRMFIELD END - Khi nhập một mã số mà trùng với mã số trước đó đã nhập rồi thì hiển thị thông báo 3.3.3 Một số ví dụ thường gặp khi nhập liệu trên Ví dụ 1: VAR2 RANGE 1 3  Giá trị biến nhận trong khoảng từ 1 đến 3 MUSTENTER  Bắt phải nhập JUMPS  Bước nhảy 1 VAR4  Khi Var1=1 chuyển tới VAR4 2 VAR5  Khi Var1=1 chuyển tới VAR5 3 VAR10  Khi Var1=1 chuyển tới VAR6 END AFTER ENTRY IF (VAR2=2) AND (VAR1=1) THEN HELP "Xem lại: VAR1 không thể nhận giá trị 2 nếu biến F2=1"  Hiển thị thông báo GOTO VAR2  quay trở về biến VAR2 ENDIF END END Vũ Huy Nhất – vhn1511@gmail.com 6 Vũ Huy Nhất – vhn1511@gmail.com 7 Ví dụ 2: Check hiện thông báo giá trị vừa được nhập là gì với Epidata * Trên 1 file .rec LABELBLOCK LABEL label_sex 1 nam 2 Nu END END Sex COMMENT LEGAL USE label_sex  Hiện chữ màu xanh bên cạnh giá trị vừa nhập TYPE COMMENT  hiện giá trị cần nhập khi ấn F9 END * Giá trị hiển thị có thể nằm trong một file .rec số liệu khác Bien_hienthi COMMENT LEGAL file_khac.rec TYPE COMMENT END Vũ Huy Nhất – vhn1511@gmail.com 8 Check tính khoảng thời gian giữa 2 thời điểm Bạn muốn tính khoảng thời gian giữa 2 thời điểm:[ d1 và d2 =Tổng bao nhiêu ngày (d6) = bao nhiêu năm (d3) + lẻ bao nhiêu tháng(d4) + lẻ bao nhiêu ngày (d5)] Dưới đây là dòng lệnh giúp bạn làm điều đó File .CHK d1 MUSTENTER END d2 MUSTENTER AFTER ENTRY if d2 < d1 then help "Xem lai: d2 < d1 " goto d2 endif d3=integer((d2-d1)/365.25) d4=integer(((d2-d1)/30.5)-(12*d3)) d5=d2-d1-integer(d4*30.5)-(365.25*d3) d6=d2-d1 END END d3 noenter end d4 noenter end d5 noenter end d6 noenter end File .QES d1 <dd/mm/yyyy> d2 <dd/mm/yyyy> d3 số năm chẵn ### d4 số tháng lẻ ## d5 số ngày lẻ #### Days total: d6 days ######## Vũ Huy Nhất – vhn1511@gmail.com 9 Check EpiData với biến danh mục Lấy câu này làm hướng dẫn C109 Hiện nay bạn đang làm những nghề gì? (Gợi ý trả lời: còn nghề gì khác không? Giải thích: Nghề tự do: lái xe ôm, bán nước,…. Việc bất hợp pháp: cờ bạc, bán ma túy,… Không đọc các khả năng xảy ra, chỉ gợi ý và khoanh vào tất cả các câu trả lời. Làm ruộng 1 Nhân viên nhà nước 2 Nhân viên phục vụ 3 Nhõn viờn bán hàng 4 Chủ kinh doanh/buôn bán 5 Sinh viên 6 Nghề tự do 7 Việc bất hợp pháp 8 Hiện tại thất nghiệp 9 Khác (ghi rõ)…… ……… 10 Bạn đang đứng trước một câu hỏi đa lựa chọn, ở đây là 10 lựa chọn khác nhau, lựa chọn cuối cùng là khác(Ghi rõ). Công việc của bạn là thiết kế trên EpiData sao cho các dữ liệu được nhập chính xác, đầy đủ và tiết kiệm công sức của nhập liệu viên. Đứng trước câu hỏi này có 2 cách giải quyết cho bài toàn trên với số liệu ở dạng số (numberic) Hướng 1: Tạo một trường C109x chỉ nhập số thứ tự của từng lựa chọn và các biến (c109x1, c109x2, c109x3,…,c109x10) sẽ nhận những giá trị tương ứng khi ta nhập. Và nếu chọn “10. Khác” thì xuống biến c109x10x để ghi rõ lựa chọn khác, còn lựa chọn từ 1 đến 9 thì bỏ qua biến c109x10x1 (Ghi rõ nghề khác). Bước 1.1 Khai báo Bạn vào khai báo câu hỏi này như sau: Lưu ý: Nếu ta nới rộng khoảng giá trị của biến thêm 2 ký tự ( c109x @##) sẽ làm ta mất khả nhiều công sức ENTER khi câu hỏi có lựa chọn nhỏ hơn 9 (tức 1 ký tự) vì chưa lấp đầy ký tự nó sẽ không tự nhảy. Nên ở đây nếu câu hỏi có lựa chọn 10, ta sẽ gán cho nó là số “0” khi nhập liệu. Sau khi để tạo file nhập liệu trong cửa số nhập liệu sẽ hiện thị như sau: Vũ Huy Nhất – vhn1511@gmail.com 10 Bước 1.2 Check để nhập liệu Khi vào trong ta sẽ sử dụng đoạn mã như sau để thực hiện các mục tiêu trên. [...]... Bienchuyen AFTER ENTRY vid_tinh = id_tinh vid_huyen = id_huyen vid_xa = id_xa vngay_dt = ngay_dt RELATE id_hgd THANHVIEN.REC END END id_huyen NOENTER END id_xa NOENTER END ngay_dt NOENTER END 15 Vũ Huy Nhất – vhn1511@gmail.com TÀI LIỆU THAM KHẢO 1 Phạm Việt Cường và cs, Tài liệu giảng dạy môn kỹ thuật máy tính – phần mềm EpiData (2006), Đại học Y tế Công cộng 2 http://www .epidata. dk 16 ... đó copy đoạn lệnh đó vào 14 Vũ Huy Nhất – vhn1511@gmail.com Check tạo liên kết giữa 2 file nhập liệu Nếu bạn đứng trước bộ phiếu điều tra với: thông tin hộ gia đình và thông tin về các thành viên trong hộ (ví dụ như thông tin về tình trạng dinh dưỡng của những đứa trẻ trong hộ hay chi tiết các lần khám chữa bệnh của từng thành viên trong hộ…) Điều mà bạn cần phải làm với EpiData là: 1 Thiết kế 2 form... c109x 12 Vũ Huy Nhất – vhn1511@gmail.com c109x1 NOENTER END c109x2 NOENTER END c109x3 NOENTER END c109x4 NOENTER END c109x5 NOENTER END c109x6 NOENTER END c109x7 NOENTER END c109x8 NOENTER END c109x9 NOENTER END c109x10x NOENTER END Bước 1.3: Vào để xem thành quả Hướng 2: Tạo ra 10 biến tương ứng với 10 lựa chọn, ta cứ lần lượt đến từng biến để nhập giá trị (1-0) Tuy nhiên hướng này mình không khuyến... vid_huyen = id_huyen vid_xa = id_xa vngay_dt = ngay_dt END END BEFORE FILE * helper temporary variables DEFINE vid_tinh ###### GLOBAL DEFINE vid_huyen ###### GLOBAL DEFINE vid_xa ###### GLOBAL id_tinh NOENTER END DEFINE vngay_dt GLOBAL END Đến biến nào đấy (Vd: bienchuyen) mà sau khi bạn nhập thì lâp tức đến form THANHVIEN.REC để nhập thông tin thành viên thì bạn check tại biến này như sau Bienchuyen... sau với ký tự dạng chữ (chuỗi) Check như sau: Hướng 3 BEFORE file DEFINE A1 DEFINE A2 DEFINE A3 DEFINE A4 DEFINE A5 DEFINE A6 DEFINE A7 DEFINE A8 DEFINE A9 DEFINE A10 END C109 13 Vũ Huy Nhất – vhn1511@gmail.com AFTER ENTRY LET A1=COPY(C109,1,1) LET A2=COPY(C109,2,1) LET A3=COPY(C109,3,1) LET A4=COPY(C109,4,1) LET A5=COPY(C109,5,1) LET A6=COPY(C109,6,1) LET A7=COPY(C109,7,1) LET A8=COPY(C109,8,1)... c109x2 ELSE c109x2=1 ENDIF ENDIF IF c109x=3 THEN IF c109x3 = 1 THEN CLEAR c109x3 ELSE c109x3=1 ENDIF ENDIF IF c109x=4 THEN IF c109x4 = 1 THEN CLEAR c109x4 ELSE c109x4=1 ENDIF ENDIF IF c109x=5 THEN 11 Vũ Huy Nhất – vhn1511@gmail.com IF c109x5 = 1 THEN CLEAR c109x5 ELSE c109x5=1 ENDIF ENDIF IF c109x=6 THEN IF c109x6 = 1 THEN CLEAR c109x6 ELSE c109x6=1 ENDIF ENDIF IF c109x=7 THEN IF c109x7 = 1 THEN CLEAR.. .Vũ Huy Nhất – vhn1511@gmail.com Chi tiết như sau: c109x TOPOFSCREEN RANGE 0 9 AFTER ENTRY IF c109x= THEN IF c109x10x = 1 THEN UNHIDE c109x10x1 ELSE HIDE c109x10x1 ENDIF ELSE IF c109x=1 THEN IF c109x1 = 1... hướng này mình không khuyến cáo vì mất nhiều công sức và thời gian của nhập liệu viên Hướng 3: Tạo 2 trường trữ (c109 và c109k), 1 trường để nhập các lựa chọn và một trường nữa để nhập “Ghi rõ lựa chọn khác” khi có lựa chọn “10.Khác” Tuy nhiên cái không này sợ cậu không biết phân tích dữ liệu về sau với ký tự dạng chữ (chuỗi) Check như sau: Hướng 3 BEFORE file DEFINE A1 DEFINE A2 DEFINE A3 DEFINE . thiện (đẹp về hình thức, dễ hiểu về nội dung trình bày), dễ nhập, nhanh chóng (loại bỏ các thao tác thừa). *Giao diện và các file chính được tạo bởi Epidata Tệp .QES Tệp .REC Tệp. lẻ #### Days total: d6 days ######## Vũ Huy Nhất – vhn1511@gmail.com 9 Check EpiData với biến danh mục Lấy câu này làm hướng dẫn C109 Hiện nay bạn đang làm những nghề gì? (Gợi. Việt Cường và cs, Tài liệu giảng dạy môn kỹ thuật máy tính – phần mềm EpiData (2006), Đại học Y tế Công cộng. 2. http://www .epidata. dk

Ngày đăng: 08/06/2015, 20:07

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

Tài liệu liên quan