เรียน STATA แบบบ้านๆ ไปด้วยกัน: Do file ภาคคำสั่ง "House keeping"


จัดการไฟล์ STATA อย่างมีประสิทธิภาพ = Automatic-จัดการผ่าน do file , Backup - แยกไฟล์ที่จัดการกับไฟล์ต้นฉบับ ,Common - มีโฟล์เดอร์ประจำสำหรับเก็บไฟล์ STATA ทั้งมวล , Distribute - จัดการแยกให้เป็นหมวดหมู่ทีหลัง

ดังที่เล่าไว้ในครั้งก่อน ว่า Do file คือบันทึกของชุดคำสั่ง ที่สามารถตรวจสอบได้ ทำซ้ำได้  เรียกง่ายๆ ว่า การทำ Do file คือการเขียนโปรแกรมนั่นเอง
แต่การทำ Do file มีข้อดีคือ ไม่ต้องใช้ภาษาพิเศษ และสามารถใช้ Menu ในการทำแล้ว copy คำสั่งมา past ใน Do file editor ได้เลย  ฟังแล้วอาจจะงงๆ มาดูกันดีกว่า

Do file editor  โดยคลิกไอคอนที่ซ้ายมือของหน้าจอโปรแกรม จะปรากฎหน้าต่างใหม่คล้ายๆ note pad  

คำสั่งที่จะบรรจุใน Do file นั้น อาจแบ่งเป็น สี่ประเภท คือ
1. คำสั่งสามัญประจำบ้าน “House keeping”  ได้แก่
   1.1.  คำสั่งที่ช่วยให้การ run เป็นไปอย่างราบรื่น
   1.2  คำสั่งในการเปิดไฟล์
   1.3   คำสั่งในการบันทึกผล ( ทำ log file…งงไหมคะ อีกที Do file บันทึกคำสั่ง  log file บันทึกผล)

 2. คำสั่งในการจัดการข้อมูล “Data cleaning” ให้เหมาะสมกับการวิเคราะห์ อาทิ   ทำ ordinal data ให้เป็น dichotomous , การเปลี่ยนชื่อ variable  etc..

 3. คำสั่งในการวิเคราะห์ข้อมูล “Data descriptive/analysis”  เช่น การแสดง proportion  การหา chisquare etc.. ไปจนถึงสถิติชั้นสูง เช่น Regression model
เวบไซต์ที่ดีมากในการใช้คำสั่งและแปลผลวิเคราะห์ โดย UCLA

4. คำสั่งในการแสดงผลออกมาเป็น กราฟ รูปภาพต่างๆ

วันนี้ขอเริ่มด้วยคำสั่งสามัญประจำบ้าน ดูตามภาพนะคะ

cd D:\STATA  change directory ไปที่โฟล์เดอร์ที่ชื่อ STAT A  หมายความว่า เราจะบันทึกผลิตผลจาก do file นี้ ได้แก่ cleaned data  และ log file  ไว้ในโฟล์เดอร์นี้ ในกรณีที่ทำแบบนี้ เราควรมีโฟลเดอร์เจ้าประจำ ไว้เก็บรวมไฟล์ STATA ทั้งมวลไว้ แล้วค่อยไปแยกไปเก็บเป็นหมวดหมู่ทีหลัง
อีกวิธีหนึ่งที่ไม่ต้องระบุ cd ไว้ คือใช้ ado เข้ามาช่วยซึ่งจะกล่าวต่อไปคะ 

version 11  บอกโปรแกรมให้รู้เวอร์ชั่น เพื่อว่าต่อไป หากมี STATA version ใหม่กว่า ก็สามารถทำตามคำสั่งแบบเวอร์ชันนี้ได้ไม่ผิดพลาด
Set more off   การแสดงผลที่หน้าจอให้มีความต่อเนื่อง  ถ้าไม่ใส่คำสั่งนี้ เวลาแสดงผลมันจะคั่นด้วยคำว่า “more” ทุกย่อหน้า
Capture clear และ Set memory 10 MB     ตรงนี้ฉันก็ไม่เข้าใจชัดเจนนัก แต่ช่วยทำให้การทำงานของ STATA ไม่อืด โดยเฉพาะในคอมพิวเตอร์ที่ RAM น้อยๆ  10  MB นี้พอเพียงสำหรับการวิเคราะห์ทั่วไป แต่ถ้าเป็น repeated measure ควรตั้งไว้ที่ 50 MB เป็นอย่างน้อย

Capture log close   เพื่อให้ สามารถแก้ไข do file ได้โดยไม่ต้องไปปิดตัว log file ก่อน เหมือนการขอเวลานอกก่อน take

log using “ ชื่อ.log”, replace    คำว่า log using มีความหมายประมาณ “Action” ในกองถ่าย คือเริ่มบันทึกผลที่เกิดขึ้นจากจุดนี้ : ตั้งชื่อของ log file ในเครื่องหมายคำพูด  สังเกตจะเป็นสีน้ำตาล : ส่วน replace หมายถึงให้บันทึกทับของเก่าไปเลย

/* .........*/   ตรงนี้ไม่ใช่คำสั่ง แต่เป็นคำอธิบายต่างๆ เช่นวันที่สร้างไฟล์สังเกตจะเห็น เป็นสีเขียว

use “ชื่อ,dta”, clear    คำว่า use  คือให้เปิดไฟล์ data ขึ้นมา : ส่วน clear คือ แม้โปรแกรมจะกำลังใช้ data อื่นอยู่ ก็ให้ดึง data ชุดใหม่ขึ้นมา

Save  เก็บไฟล์ data ในชื่อ_mod.dta  ควรเก็บไฟล์ข้อมูลที่ผ่านการ modifiedแยกจากไฟล์ต้นฉบับ
แต่การสำรองไฟล์ do นั้นต้อง save as..ไว้เอง ถ้ากลัวลืมก็เขียนไว้คะ
Log close     มีความหมายเหมือนกับ “Take” คือหยุดบันทึกได้แล้ว 
สังเกต:  หากเราไม่มีคำสั่ง capture log close  ในระหว่าง using log ถึง log close จะแก้ไข do file ไม่ได้
set more on   ให้โปรแกรมทำคั่นหน้าเหมือนเก่า

แนะนำให้ทำไฟล์ template เช่นตัวอย่าง dofilepattern  

ยังมีไฟล์คำสั่งที่เก่งกว่า do.file ขึ้นไปอีกขึ้นเรียกว่า "ado.file" ลองมาดูตัวอย่างคะว่าทำอย่างไร
สมมติว่า เราไม่อยากระบุคำสั่ง cd ไว้ใน do file เพราะถ้าเอาออกนอกโฟล์เดอร์มันจะทำงานไม่ได้ และไม่อยากกดปิดเปิดหน้าต่าง window หลายๆ ทีให้วุ่นวาย เราจะสั่งให้ STATA เข้าไปใน working directory ก็ทำได้ด้วยการเขียนใน do file ดังภาพ แล้ว save as .ado และต้องเก็บไว้ในที่เฉพาะคือ ado/personal คะ


หลังจากนั้น เวลาเราจะดูหรือแก้ไข do file ที่เก็บไว้ใน working directory นั้น ก็เพียง พิมพ์ชื่อของ ado (จึงควรตั้งให้สั้นๆ จำง่าย)  -- ซึ่งจะแสดงชื่อไฟล์ต่างๆ ใน directory นั้น  ซึ่งเราใช้คำสั่ง "doedit" เปิดไฟล์นั้นใน do file editor ได้เลย 

 

 

เทคนิคการเรียนรู้แต่ละคนแตกต่างกัน แต่ฉันชอบแบบสังเกตสิ่งที่เกิดขึ้น แล้วย้อนไปดูว่ามี "โครงสร้าง- Anatomy" และ "การทำงาน-Physiology" อย่างไร - ถ้าไม่รู้ว่าจะใช้ประโยชน์อะไร สมองมันไม่ยอมจำเอาเสียเลย..โปรดติดตามใน STATA in clinical research : pracitcal notes
---------------------------------------------------------------------------------------------

 เป็น clinician เรียนใช้โปรแกรมสถิติไปทำไม ?  ตอน orientation อาจารย์บอกไว้ชัดเจนว่า "ไม่ได้ให้ทำหน้าที่ได้เหมือนนักสถิติ" แต่เพื่อ "สื่อสารกันง่ายขึ้น" ซึ่งเป็นสิ่งที่ฉันเห็นด้วยว่า การสื่อความคิดระหว่างคนสองที่มาให้เข้าใจกัน มันไม่ใช่เรื่องง่าย

  ปรัชญาบางอย่างได้จากการเรียนใช้โปรแกรมสถิติว่าการศึกษาที่ประสบผลนั้น ต้อง เรียนในสิ่งที่ใช้ และใช้ในสิ่งที่เรียน...การเรียนแบบ คลิกตามคำสั่งนั้น ง่าย แต่ไม่ได้ผล ต่างจากการเรียนด้วยโจทย์ ดีที่สุดคือทำงานวิจัยของตนเอง..แม้เสียเวลา (และอารมณ์) แต่จำได้ดีนัก

ภาพ: จะซึ้งคุณค่าของการบริหารจัดการข้อมูล ก็ตอน chart review เองนี่แล

หมายเลขบันทึก: 385559เขียนเมื่อ 17 สิงหาคม 2010 12:08 น. ()แก้ไขเมื่อ 6 กันยายน 2013 23:23 น. ()สัญญาอนุญาต: ครีเอทีฟคอมมอนส์แบบ แสดงที่มา-ไม่ใช้เพื่อการค้า-อนุญาตแบบเดียวกันจำนวนที่อ่านจำนวนที่อ่าน:


ความเห็น (0)

ไม่มีความเห็น

พบปัญหาการใช้งานกรุณาแจ้ง LINE ID @gotoknow
ClassStart
ระบบจัดการการเรียนการสอนผ่านอินเทอร์เน็ต
ทั้งเว็บทั้งแอปใช้งานฟรี
ClassStart Books
โครงการหนังสือจากคลาสสตาร์ท