การเขียนโปรแกรม SAS - เรียนรู้วิธีการเขียนโค้ดใน SAS!



บล็อกนี้เกี่ยวกับการเขียนโปรแกรม SAS จะแนะนำแนวคิดการเขียนโปรแกรม SAS และช่วยให้คุณเข้าใจพื้นฐานต่างๆของ SAS โดยละเอียดพร้อมตัวอย่าง

ในบล็อกนี้ฉันจะแนะนำให้คุณรู้จักกับแนวคิดสำคัญบางประการของการเขียนโปรแกรม SAS ก่อนที่เราจะเริ่มต้นสิ่งสำคัญคือคุณต้องทำความคุ้นเคยกับ SAS บล็อกก่อนหน้าของฉันบน บทช่วยสอน SAS จะช่วยให้คุณเข้าใจ SAS แอปพลิเคชันและจะช่วยคุณติดตั้ง SAS University Edition ซึ่งเราจะใช้ที่นี่เป็นสภาพแวดล้อมการเขียนโปรแกรมสงสัยว่าทักษะคืออะไรคุณควรเชี่ยวชาญในปีนี้หรือไม่? นอกจากนี้หากคุณวางแผนที่จะก้าวเข้าสู่ Data Analytics เป็นวิธีที่ดีที่สุดวิธีหนึ่งในการเริ่มต้นใช้งานแบบเดียวกัน

Edureka 2019 Tech Career Guide ออกแล้ว! บทบาทงานที่ร้อนแรงที่สุดเส้นทางการเรียนรู้ที่แม่นยำแนวโน้มอุตสาหกรรมและอื่น ๆ ในคู่มือ ดาวน์โหลด ตอนนี้.





ดังนั้นโดยไม่ต้องเพิ่มเติมล่าช้ามาเริ่มการเขียนโปรแกรม SAS กันดีกว่า

บล็อกนี้จะช่วยให้คุณเข้าใจหัวข้อต่อไปนี้:



ก่อนที่เราจะเริ่มเขียนโค้ดฉันขอสรุปคำศัพท์ที่สำคัญสองสามคำซึ่งมีความสำคัญสำหรับการเขียนโปรแกรม SAS

พื้นฐานของการเขียนโปรแกรม SAS

SAS Windows

องค์กรขนาดใหญ่และสถาบันฝึกอบรมชอบใช้ SAS Windows SAS Windows มีโปรแกรมอรรถประโยชน์มากมายที่ช่วยลดเวลาในการเขียนโค้ด

ภาพต่อไปนี้แสดงส่วนต่างๆของ SAS Windows



SAS-Windows - การเขียนโปรแกรม SAS - Edureka

  • หน้าต่างบันทึก : เป็นหน้าต่างการดำเนินการ คุณสามารถตรวจสอบการทำงานของโปรแกรมได้ที่นี่ นอกจากนี้ยังแสดงข้อผิดพลาดคำเตือนและบันทึก
  • หน้าต่างรหัส :หน้าต่างนี้เรียกอีกอย่างว่าหน้าต่างตัวแก้ไข พิจารณาว่าเป็นกระดาษเปล่าหรือแผ่นจดบันทึกซึ่งคุณสามารถเขียนรหัส SAS ได้
  • หน้าต่างเอาต์พุต : ตามชื่อที่แนะนำหน้าต่างนี้จะแสดงผลลัพธ์ของโปรแกรม / โค้ดที่คุณเขียนในโปรแกรมแก้ไข
  • หน้าต่างผลลัพธ์ : เป็นดัชนีที่แสดงรายการผลลัพธ์ทั้งหมดของโปรแกรมที่รันในหนึ่งเซสชัน เนื่องจากมันเก็บผลลัพธ์ของเซสชันหนึ่ง ๆ ไว้หากคุณปิดซอฟต์แวร์และรีสตาร์ทหน้าต่างผลลัพธ์จะว่างเปล่า
  • สำรวจ Window : เก็บรายชื่อไลบรารีทั้งหมดในระบบ คุณยังสามารถเรียกดูไฟล์ที่ระบบรองรับได้ที่นี่

อย่างไรก็ตามมีองค์กรเพียงไม่กี่แห่งที่ใช้ Linux แต่ไม่มีส่วนต่อประสานกราฟิกกับผู้ใช้ที่คุณต้องเขียนโค้ดสำหรับทุกแบบสอบถาม จึงไม่สะดวกในการใช้งาน

ชุดข้อมูล SAS

ชุดข้อมูล SAS เรียกว่าเป็นไฟล์ข้อมูล ไฟล์ข้อมูลประกอบด้วยแถวและคอลัมน์ แถวถือการสังเกตและคอลัมน์ค้างไว้ชื่อตัวแปร.

ตัวแปร SAS

SAS มีตัวแปรสองประเภท:

  • ตัวแปรตัวเลข : นี่คือประเภทตัวแปรเริ่มต้น ตัวแปรเหล่านี้ใช้ในนิพจน์ทางคณิตศาสตร์
  • ตัวแปรอักขระ :ตัวแปรอักขระใช้สำหรับค่าที่ไม่ได้ใช้ในนิพจน์ทางคณิตศาสตร์
    จะถือว่าเป็นข้อความหรือสตริง ตัวแปรจะกลายเป็นตัวแปรอักขระโดยการเพิ่ม‘$’จุดไฟที่ท้ายชื่อตัวแปร

ห้องสมุด SAS

ไลบรารี SAS คือชุดของไฟล์ SAS ที่เก็บอยู่ในโฟลเดอร์หรือไดเร็กทอรีเดียวกันบนคอมพิวเตอร์ของคุณ

  • ห้องสมุดชั่วคราว : ในไลบรารีนี้ชุดข้อมูลจะถูกลบเมื่อเซสชัน SAS สิ้นสุดลง
  • ห้องสมุดถาวร : ชุดข้อมูลจะถูกบันทึกอย่างถาวร ดังนั้นจึงมีให้บริการในช่วงต่างๆ

ผู้ใช้ยังสามารถสร้างหรือกำหนดไลบรารีใหม่ที่เรียกว่าไลบรารีที่ผู้ใช้กำหนดโดยใช้คีย์เวิร์ด LIBNAME . สิ่งเหล่านี้ยังเป็นห้องสมุดถาวร

การเขียนโปรแกรม SAS: โครงสร้างรหัส SAS

การเขียนโปรแกรม SAS ขึ้นอยู่กับหน่วยการสร้างสองแบบ:

  • ขั้นตอนข้อมูล : ขั้นตอน DATA สร้างชุดข้อมูล SAS จากนั้นส่งผ่านข้อมูลไปยังขั้นตอน PROC
  • ขั้นตอนกระบวนการ : ขั้นตอน PROC ประมวลผลข้อมูล

โปรแกรม SAS ควรปฏิบัติตามกฎที่ระบุไว้ด้านล่าง:

  • เกือบทุกรหัสจะขึ้นต้นด้วย DATA หรือ PROC Step
  • รหัส SAS ทุกบรรทัดลงท้ายด้วยเซมิโคลอน
  • รหัส SAS ลงท้ายด้วยคำหลัก RUN หรือ QUIT
  • รหัส SAS ไม่คำนึงถึงขนาดตัวพิมพ์
  • คุณสามารถเขียนโค้ดข้ามบรรทัดต่างๆหรือเขียนหลายคำสั่งในบรรทัดเดียวก็ได้

ตอนนี้เราได้เห็นคำศัพท์พื้นฐานบางประการแล้วให้เราเริ่มต้นด้วยการเขียนโปรแกรม SAS ด้วยรหัสพื้นฐานนี้:

DATA Employee_Info input Emp_ID Emp_Name $ Emp_Vertical $ datalines 101 Mak SQL 102 Rama SAS 103 Priya Java 104 Karthik Excel 105 Mandeep SAS Run

ในโค้ดด้านบนเราได้สร้างชุดข้อมูลที่เรียกว่า Employee_Info มีสามตัวแปรตัวแปรตัวเลขหนึ่งตัวเป็น Emp_Id และตัวแปรอักขระสองตัวเป็น Emp_Name และ Emp_Verticals คำสั่ง Run แสดงชุดข้อมูลในหน้าต่างเอาต์พุต

ภาพด้านล่างแสดงผลลัพธ์ของโค้ดดังกล่าวข้างต้น

สมมติว่าคุณต้องการเห็นผลลัพธ์ในมุมมองการพิมพ์คุณสามารถทำได้โดยใช้ขั้นตอน PROC PRINT ส่วนที่เหลือของโค้ดจะยังคงเหมือนเดิม

DATA Employee_Info input Emp_ID Emp_Name $ Emp_Vertical $ datalines 101 Mak SQL 102 Rama SAS 103 Priya Java 104 Karthik Excel 105 Mandeep SAS Run PROC PRINT DATA = Employee_Info Run

ภาพด้านล่างแสดงผลลัพธ์ของโค้ดด้านบน

เราเพิ่งสร้างชุดข้อมูลและทำความเข้าใจว่าขั้นตอนการพิมพ์ทำงานอย่างไร ตอนนี้ให้เรานำชุดข้อมูลข้างต้นและใช้สำหรับการเขียนโปรแกรมเพิ่มเติม สมมติว่าเราต้องการเพิ่มวันที่เข้าร่วมของพนักงานในชุดข้อมูล ดังนั้นเราจึงสร้างตัวแปรที่เรียกว่า DOJ ให้เป็นอินพุตและพิมพ์ผลลัพธ์

DATA Employee_Info input Emp_ID Emp_Name $ Emp_Vertical $ DOJ datalines 101 Mak SQL 18/08/2013 102 Rama SAS 25/06/2015 103 Priya Java 21/02/2010 104 Karthik Excel 19/05/2007 105 Mandeep SAS 11/09/2016 เรียกใช้ PROC PRINT DATA = Employee_Info Run

ภาพด้านล่างแสดงผลลัพธ์ของโค้ดด้านบน จะเห็นได้ว่ามีการสร้างตัวแปร แต่ไม่ได้พิมพ์ค่า DOJ แต่เราเห็นว่ามีจุดแทนที่ค่าวันที่


เหตุใดจึงเกิดขึ้น ตัวแปร DOJ ไม่มีคำต่อท้าย '$' ซึ่งหมายความว่าโดยค่าเริ่มต้น SAS จะอ่านเป็นตัวแปรตัวเลข แต่ข้อมูลที่เราป้อนมีอักขระพิเศษ ‘/’ ดังนั้นจึงไม่พิมพ์ผลลัพธ์เนื่องจากไม่ใช่ข้อมูลตัวเลขล้วนๆ หากคุณตรวจสอบหน้าต่างบันทึกคุณจะเห็นข้อความแสดงข้อผิดพลาดว่า 'ข้อมูลไม่ถูกต้องสำหรับตัวแปร DOJ'

ทีนี้เราจะแก้ปัญหานี้อย่างไร? วิธีหนึ่งในการแก้ปัญหาคือใช้คำต่อท้าย '$' สำหรับตัวแปร DOJ สิ่งนี้จะแปลงตัวแปร DOJ เป็นอักขระและคุณจะสามารถพิมพ์ค่าวันที่ได้ ให้เราทำการเปลี่ยนแปลงโค้ดและดูผลลัพธ์

DATA Employee_Info input Emp_ID Emp_Name $ Emp_Vertical $ DOJ $ datalines 101 Mak SQL 18/08/2013 102 Rama SAS 25/06/2015 103 Priya Java 21/02/2010 104 Karthik Excel 19/05/2007 105 Mandeep SAS 11/09 / 2016 เรียกใช้ PROC PRINT DATA = Employee_Info Run

หน้าจอแสดงผลจะแสดงผลลัพธ์ต่อไปนี้


คุณจะเห็นว่าค่าข้อมูลแสดงเป็นวันที่โดยการแปลง DOJ เป็นอักขระ อย่างไรก็ตามนี่เป็นวิธีแก้ปัญหาชั่วคราว ให้ฉันอธิบายมันอย่างไร?

ลองนึกภาพธนาคารแห่งหนึ่งมีชุดข้อมูลที่คล้ายกัน ชุดข้อมูลมีรายละเอียดเจ้าของบัญชีเช่นจำนวนเงินกู้ค่างวดและวันครบกำหนดชำระเงินกู้ ลองนึกภาพผู้ถือพลาดกำหนดเวลาในการผ่อนชำระและธนาคารต้องการคำนวณความล่าช้า ธนาคารจะต้องคำนวณความแตกต่างระหว่างวันที่กำหนดและวันที่ปัจจุบัน

แต่หากชุดข้อมูลของธนาคารมีวันที่ในรูปแบบอักขระธนาคารจะไม่สามารถดำเนินการทางคณิตศาสตร์ได้ ปัญหานี้อาจส่งผลต่อชุดข้อมูลของเราด้วย แล้วเราจะแก้ปัญหานี้อย่างไร?

แนวคิดถัดไปจะช่วยให้คุณเอาชนะปัญหานี้ได้

ข้อมูลและรูปแบบใน SAS

สิ่งสำคัญคือคุณต้องเข้าใจหัวข้อนี้ดีหากคุณต้องการเก่งในการเขียนโปรแกรม SASหากคุณจำได้ฉันได้กล่าวไว้ก่อนหน้านี้ว่า SAS มีตัวแปรมาตรฐานสองประเภท:

  • ตัวเลข
  • ตัวละคร

เมื่อ SAS พบตัวแปรที่ไม่ใช่มาตรฐาน SAS จะแสดงข้อผิดพลาดหรือคุณจะไม่ได้ผลลัพธ์ที่ต้องการ เพื่อเอาชนะปัญหานี้ SAS ใช้แจ้งแล้วและรูปแบบ

หาข้อมูลเพิ่มเติม

โดยทั่วไปข้อมูลจะใช้เพื่ออ่านหรือป้อนข้อมูลจากไฟล์ภายนอกหรือไฟล์แบบแบน (เช่นไฟล์ข้อความหรือไฟล์ลำดับ) ข้อมูลจะแนะนำ SAS เกี่ยวกับวิธีการอ่านข้อมูลลงในตัวแปร SAS SAS มีข้อมูลสามประเภท:อักขระตัวเลขและวันที่ / เวลา ข้อมูลมีชื่อตามดังต่อไปนี้โครงสร้างไวยากรณ์:

  • ข้อมูลตัวละคร: $ INFORMATw.
  • แจ้งตัวเลข: INFORMATw.d
  • วันที่ / เวลาที่แจ้ง: INFORMATw.

'$' ระบุข้อมูลอักขระ INFORMAT หมายถึงตัวเลือกบางครั้งชื่อ SAS 'w' ระบุความกว้าง (ไบต์หรือจำนวนคอลัมน์) ของตัวแปร. 'd' ใช้สำหรับข้อมูลตัวเลขเพื่อระบุจำนวนหลักทางด้านขวาของตำแหน่งทศนิยม ข้อมูลทั้งหมดต้องมีจุดทศนิยม (.) เพื่อให้ SAS สามารถ
แยกความแตกต่างของข้อมูลจากตัวแปร SAS

ให้เรากลับไปที่รหัสเดิมของเราและดูว่า Date / Time Informat ช่วยเราได้หรือไม่ ดังนั้นเรามาเปลี่ยนรหัสให้สอดคล้องกันและเพิ่ม Date Informat เป็นดังนี้:

DATA Employee_Info input Emp_ID Emp_Name $ Emp_Vertical $ DOJ INFORMAT DOJ ddmmyy10. datalines 101 Mak SQL 18/08/2013 102 Rama SAS 25/06/2015 103 Priya Java 21/02/2010 104 Karthik Excel 19/05/2007 105 Mandeep SAS 11/09/2016 เรียกใช้ PROC PRINT DATA = Employee_Info Run

บรรทัดที่ 3 ในโค้ดจะสั่งให้ SAS อ่านในตัวแปร 'date of join' (DOJ) โดยใช้วันที่
แจ้ง MMDDYYw. สำหรับแต่ละช่องวันที่มีช่องว่าง 10 ช่องตัวระบุ 'w.' คือตั้งค่าเป็น 10

ผลลัพธ์ของโค้ดจะมีลักษณะดังนี้

ผลลัพธ์แสดงว่าเรายังไม่ได้ผลลัพธ์ที่ต้องการ แต่คอลัมน์ DOJ จะเก็บค่าตัวเลขบางค่าไว้และไม่ใช่วันที่ที่เราระบุ ตอนนี้ทำไมถึงเป็นเช่นนั้น? เมื่ออ่านวันที่ด้วยข้อมูลวันที่แล้ว SAS จะจัดเก็บวันที่เป็นตัวเลข นั่นหมายความว่าจะอ่านเป็นจำนวนวันระหว่างวันที่ถึง 1 มกราคม 1960 (ตัวอย่างเช่น: 15/3/1994 จัดเก็บเป็น 12492)

เหตุผลเบื้องหลังคือ SAS มีตัวนับสามตัวแยกกันซึ่งจะติดตามวันที่และเวลา ตัวนับวันที่เหล่านี้เริ่มต้นที่ศูนย์ในวันที่ 1 มกราคม 1960 ดังนั้นวันที่ก่อน 1/1/1960 จึงมีค่าเป็นลบและวันที่ใด ๆ หลังจากมีค่าเป็นบวก ทุกวันตอนเที่ยงคืนตัวนับวันที่จะเพิ่มขึ้นทีละหนึ่ง

มีเรื่องหนึ่งที่ผู้ก่อตั้ง SAS ต้องการใช้วันเกิดโดยประมาณของระบบ IBM 370 และพวกเขาเลือกวันที่ 1 มกราคม 1960 เป็นค่าประมาณที่จำง่าย

ตอนนี้คุณรู้สาเหตุที่คอลัมน์ DOJ แสดงตัวเลขเหล่านั้นแล้วให้เราลองแก้ปัญหานี้ เพื่อเอาชนะปัญหานี้เราใช้รูปแบบ

รูปแบบ

ข้อมูลเป็นคำแนะนำในการอ่านข้อมูลในขณะที่รูปแบบเป็นคำแนะนำที่ใช้ในการแสดงหรือข้อมูลเอาต์พุตการกำหนดรูปแบบสำหรับตัวแปรคือวิธีที่คุณบอกให้ SAS แสดงค่าในตัวแปร รูปแบบจะถูกจัดกลุ่มเป็นสามคลาสเช่นเดียวกับข้อมูล (อักขระตัวเลขและวันที่ - เวลา) และยังมีจุดเสมอ

รูปแบบทั่วไปของคำสั่งรูปแบบคือ:

  • FORMAT ชื่อตัวแปร FORMAT-NAME

ให้เรากลับไปที่รหัสของเราที่มีชุดข้อมูล Employee_Info เพื่อดูว่าเราสามารถแสดงวันที่ได้อย่างถูกต้องโดยใช้คำสั่ง FORMAT หรือไม่

DATA Employee_Info input Emp_ID Emp_Name $ Emp_Vertical $ DOJ INFORMAT DOJ ddmmyy10. FORMAT DOJ ddmmyy 10. datalines 101 Mak SQL 18/08/2013 102 Rama SAS 25/06/2015 103 Priya Java 21/02/2010 104 Karthik Excel 19/05/2007 105 Mandeep SAS 11/09/2016 เรียกใช้ PROC PRINT DATA = Employee_Info Run

เราได้ใช้คำสั่ง FORMAT ในบรรทัดที่ 4 ในโค้ดด้านบน หน้าจอผลลัพธ์ต่อไปนี้จะให้ผลลัพธ์ที่ต้องการแก่เรา

เราแสดงชุดข้อมูลสำเร็จโดยใช้คำสั่งรูปแบบวันที่ ฉันหวังว่าคุณจะเข้าใจวิธีการใช้รูปแบบและข้อมูลให้เราก้าวไปข้างหน้าด้วยบล็อกการเขียนโปรแกรม SAS ของเราและดูแนวคิดที่สำคัญอีกประการหนึ่ง

SAS ลูป

ในขณะที่ทำการเขียนโปรแกรม SAS เราอาจพบสถานการณ์ที่เราจำเป็นต้องเรียกใช้ไฟล์บล็อกรหัสหลายครั้ง ไม่สะดวกที่จะเขียนคำสั่งชุดเดิมซ้ำแล้วซ้ำเล่า นี่คือที่มาของภาพลูป ใน SAS คำสั่ง Do ใช้เพื่อใช้งานลูป เป็นที่รู้จักกันในชื่อ Do Loop ภาพด้านล่างแสดงไฟล์รูปแบบทั่วไปของคำสั่ง Do loop ใน SAS

ต่อไปนี้เป็นประเภทของ DO ลูปใน SAS:

  • ดัชนี : ลูปต่อจากค่าเริ่มต้นจนถึงค่าหยุดของตัวแปรดัชนี
  • ในขณะที่ : การวนซ้ำจะดำเนินต่อไปตราบเท่าที่ ในขณะที่ เงื่อนไขกลายเป็นเท็จ
  • จนถึง : วนไปเรื่อย ๆ จนถึง จนถึง เงื่อนไขกลายเป็นจริง

ทำ Index loop

เราใช้ตัวแปรดัชนีเป็นค่าเริ่มต้นและหยุดสำหรับ ทำ Index loop . คำสั่ง SAS ถูกดำเนินการซ้ำ ๆ จนกว่าตัวแปรดัชนีจะถึงค่าสุดท้าย
ไวยากรณ์:

ทำ indexvariable = initialvalue ถึง finalvalue คำสั่ง SAS End

ให้เราดูโค้ดตัวอย่างเพื่อทำความเข้าใจ Do Index Loop ในโค้ดด้านล่าง VAR คือตัวแปรดัชนี

DATA SampleLoop SUM = 0 Do VAR = 1 ถึง 10 SUM = SUM + VAR END PROC PRINT DATA = SampleLoop Run

เมื่อคุณรันโค้ดด้านบนคุณจะได้ผลลัพธ์ดังต่อไปนี้

ทำขณะวนซ้ำ

ทำในขณะที่ ลูปใช้เงื่อนไขในขณะที่ Loop นี้รันบล็อกของโค้ดเมื่อเงื่อนไขเป็นจริงและดำเนินการต่อไปจนกว่าเงื่อนไขจะกลายเป็นเท็จ เมื่อเงื่อนไขกลายเป็นเท็จลูปจะสิ้นสุดลง

ไวยากรณ์:

Do While (เงื่อนไข) คำสั่ง SAS สิ้นสุด

โค้ดตัวอย่างต่อไปนี้จะช่วยให้คุณเข้าใจ DO WHILE loop

DATA SampleLoop SUM = 0 VAR = 1 Do While (VAR<15) SUM = SUM + VAR VAR+1 END PROC PRINT DATA = SampleLoop Run 

รหัสด้านบนจะให้ผลลัพธ์ต่อไปนี้

ทำจนกว่าจะวนซ้ำ

ลูป Do until ใช้ไฟล์ จนถึง เงื่อนไข Loop นี้รันบล็อกของโค้ดเมื่อเงื่อนไขเป็นเท็จและดำเนินการต่อไปจนกว่าเงื่อนไขจะกลายเป็นจริง เมื่อเงื่อนไขกลายเป็นจริงการวนซ้ำจะสิ้นสุดลง

ไวยากรณ์:

Do Until (เงื่อนไข) คำสั่ง SAS END

มาดูตัวอย่างโปรแกรมกัน

DATA SampleLoop SUM = 0 VAR = 1 Do until (VAR> 15) SUM = SUM + VAR VAR + 1 END PROC PRINT Run

โค้ดมีเอาต์พุตดังต่อไปนี้

ดังนั้นเราจึงเสร็จสิ้นแนวคิดของลูปในการเขียนโปรแกรม SAS หัวข้อทั้งหมดที่เราศึกษาจนถึงตอนนี้ได้พูดถึงพื้นฐานของการเขียนโปรแกรม SAS โดยทั่วไป

ตอนนี้ให้เรามาดูขั้นตอนทางสถิติกัน ขั้นตอนเหล่านี้จะเป็นฐานสำหรับขั้นสูง ขั้นตอนการวิเคราะห์.

สมัครสมาชิกช่อง YouTube ของเราเพื่อรับการอัปเดตใหม่ .. !

ขั้นตอนพื้นฐานทางสถิติโดยใช้ SAS

PROC หมายถึง

ขั้นตอนนี้ใช้ในการคำนวณค่าเฉลี่ยเลขคณิตและส่วนเบี่ยงเบนมาตรฐาน สำหรับผู้ที่ยังใหม่กับสถิติอาจพบว่ายากที่จะเข้าใจคำศัพท์เหล่านี้ ดังนั้นก่อนที่เราจะเริ่มเขียนโค้ดและใช้ขั้นตอนนี้ ฉันจะพยายามอธิบายความหมายของคำเหล่านี้

เริ่มต้นด้วยค่าเฉลี่ยเลขคณิตและดูว่า PROC MEANS ใช้ในการเขียนโปรแกรม SAS เพื่อคำนวณอย่างไร

ค่าเฉลี่ยเลขคณิต

ผลรวมของค่าของตัวแปรตัวเลขหารด้วยจำนวนตัวแปรจะทำให้คุณได้ ค่าเฉลี่ยเลขคณิต . เป็นที่รู้จักกันว่าค่าเฉลี่ยและเป็นตัวชี้วัดแนวโน้มเข้าสู่ส่วนกลาง การวัดแนวโน้มเข้าสู่ส่วนกลางคือค่าเดียวที่พยายามอธิบายชุดข้อมูลโดยระบุตำแหน่งกลางภายในชุดข้อมูลนั้น

ในการเขียนโปรแกรม SAS คุณใช้ PROC MEANS เพื่อคำนวณค่าเฉลี่ยเลขคณิต ขั้นตอนนี้ช่วยให้คุณสามารถหาค่าเฉลี่ยของตัวแปรทั้งหมดหรือตัวแปรบางตัวของชุดข้อมูล คุณยังสามารถสร้างกลุ่มและคำนวณค่าเฉลี่ยของตัวแปรเฉพาะสำหรับกลุ่มนั้นได้

ไวยากรณ์:

PROC หมายถึงข้อมูล = DATASET Class Variables Var Variables
  • ตัวแปร : ตัวแปรในไวยากรณ์ข้างต้นระบุตัวแปรจากชุดข้อมูลที่จะคำนวณค่าเฉลี่ย

ค่าเฉลี่ยของชุดข้อมูล

ถ้าคุณระบุเฉพาะชื่อชุดข้อมูลโดยไม่มีตัวแปรใด ๆ คุณสามารถคำนวณค่าเฉลี่ยของตัวแปรทั้งหมดในชุดข้อมูลได้

ให้เราดูโค้ดตัวอย่าง ฉันได้พิจารณาชุดข้อมูล SAS ที่กำหนดไว้ล่วงหน้าซึ่งเรียกว่า 'รถยนต์' คำสั่งต่อไปนี้จะแสดงชุดข้อมูล

PROC PRINT data = sashelp.CARS Run

ภาพด้านล่างแสดงผลลัพธ์ของโค้ดด้านบน


ตอนนี้ให้เราใช้รหัสชุดข้อมูลนี้และคำนวณค่าเฉลี่ยของตัวแปรแต่ละตัวในชุดข้อมูล'รถ'.

PROC หมายถึงข้อมูล = sashelp CARS Mean SUM MAXDEC = 2 Run

ภาพด้านล่างแสดงค่าเฉลี่ยของตัวแปรทั้งหมดในข้อมูลที่ตั้งไว้ไม่เกินสองทศนิยม

ค่าเฉลี่ยของตัวแปรที่เลือก

ด้วยการระบุชื่อในตัวเลือก Var คุณจะได้รับค่าเฉลี่ยของตัวแปรที่ระบุ โปรดดูรหัสด้านล่าง

PROC MEANS DATA = sashelp.CARS mean SUM MAXDEC = 2 var แรงม้ากระบอกสูบ Run

ค่าเฉลี่ยตามชั้นเรียน

คุณสามารถหาค่าเฉลี่ยของตัวแปรตัวเลขได้โดยจัดเป็นกลุ่มโดยใช้พารามิเตอร์บางตัวเพื่อจัดกลุ่มพิจารณาโค้ดตัวอย่างต่อไปนี้. มาดูค่าเฉลี่ยแรงม้าสำหรับกลุ่มต่างๆที่แบ่งตามคลาส 'make' และ 'type' ของรถยนต์ต่างๆ

PROC หมายถึงข้อมูล = sashelp CARS หมายถึง SUM MAXDEC = 2 class make type var แรงม้า Run

ภาพด้านล่างแสดงผลลัพธ์ของโค้ดด้านบน

วิธีการย้อนกลับสตริง python

ให้เราดำเนินการต่อในบล็อก SAS Programming และดูแนวคิดทางสถิติที่สำคัญอีกประการหนึ่ง

ส่วนเบี่ยงเบนมาตรฐาน

ค่าเบี่ยงเบนมาตรฐาน (SD) คือการวัดความแตกต่างของข้อมูลในชุดข้อมูลที่กำหนด ในทางคณิตศาสตร์จะบอกคุณว่าข้อมูลแต่ละจุดอยู่ใกล้กับค่าเฉลี่ยของชุดข้อมูลเพียงใด หากค่าของส่วนเบี่ยงเบนมาตรฐานใกล้เคียงกับ 0 แสดงว่าจุดข้อมูลนั้นใกล้เคียงกับค่าเฉลี่ยของชุดข้อมูลมากและค่าเบี่ยงเบนมาตรฐานสูงบ่งชี้ว่าจุดข้อมูลกระจายออกไปในช่วงค่าต่างๆ

ใน SAS คุณสามารถคำนวณค่าของ Standard Deviation โดยใช้สองขั้นตอน พวกเขาคือ:

  • PROC หมายถึง
  • แบบสำรวจ

Standard Deviation โดยใช้ PROC MEANS

คุณสามารถวัดค่าเบี่ยงเบนมาตรฐานโดยใช้วิธีการ proc คุณต้องเลือก ชั่วโมง ในขั้นตอน PROC จะแสดงค่า Standard Deviation สำหรับตัวแปรตัวเลขแต่ละตัวในชุดข้อมูล

ไวยากรณ์:

PROC หมายถึงข้อมูล = ชุดข้อมูล STD

พิจารณาโค้ดตัวอย่างนี้ให้เราสร้างชุดข้อมูลอื่น CARS1 จากชุดข้อมูล CARS ในไลบรารี SASHELP ในการทำเช่นนี้เราให้เราใช้โพรซีเดอร์ PROC SQL ให้เราจัดกลุ่มข้อมูลโดยใช้ 'type' และ 'make' ของรถยนต์และคำนวณค่าเบี่ยงเบนมาตรฐานสำหรับตัวแปรที่เลือกโดยใช้ตัวเลือก STD พร้อมกับขั้นตอน PROC หมายถึง

PROC SQL สร้างตาราง CARS1 เป็นแบบ Select, ประเภท, แรงม้า, กระบอกสูบ, น้ำหนักจาก SASHELP CARS WHERE make in ('Audi', 'BMW') RUN PROC MEANS DATA = CARS1 STD Run

โค้ดด้านบนจะให้ค่าเบี่ยงเบนมาตรฐานสำหรับตัวแปรที่เลือก ภาพต่อไปนี้แสดงผลลัพธ์

แบบสำรวจกระบวนการ

ขั้นตอนนี้ใช้ในการวัดค่าเบี่ยงเบนมาตรฐานพร้อมกับคุณลักษณะขั้นสูงบางอย่างเช่นการวัดค่าเบี่ยงเบนมาตรฐานสำหรับตัวแปรหมวดหมู่และความแปรปรวน

ไวยากรณ์:

PROC SURVEYMEANS ตัวเลือกคำหลักสถิติตามตัวแปรตัวแปรคลาสตัวแปร Var

ต่อไปนี้เป็นคำอธิบายของพารามิเตอร์ที่ใช้:

  • โดย ใช้เพื่อระบุตัวแปรที่ใช้ในการสร้างกลุ่มการสังเกต
  • คลาส ระบุตัวแปรที่ใช้สำหรับตัวแปรจัดหมวดหมู่
  • ที่ไหน ระบุตัวแปรที่จะคำนวณ SD

ให้เราดูโค้ดตัวอย่างนี้ซึ่งอธิบายถึงการใช้พารามิเตอร์คลาสที่สร้างสถิติสำหรับแต่ละค่าในตัวแปรคลาส

PROC SURVEYMEANS DATA = CARS1 STD Class type Var type แรงม้า ods output statistics = rectangle Run PROC PRINT DATA = rectangle Run

ภาพด้านล่างแสดงผลลัพธ์ของโค้ดด้านบน แสดงการกระจายข้อมูลสำหรับตัวแปร 'แรงม้า' สำหรับช่วงความเชื่อมั่น 95% (ช่วงความเชื่อมั่นหมายถึงช่วงของค่าที่กำหนดไว้เพื่อให้มีความน่าจะเป็นที่ระบุว่าค่าของพารามิเตอร์อยู่ภายใน)

ดังนั้นเราจึงมาถึงจุดสิ้นสุดของบล็อกการเขียนโปรแกรม SAS สำหรับข้อสงสัยหรือปัญหาเกี่ยวกับเนื้อหาของบล็อกโปรดทิ้งไว้ในส่วนความคิดเห็นเราจะแก้ไขโดยเร็วที่สุดและตอบกลับ

หากคุณต้องการเรียนรู้ SAS และสร้างอาชีพในโดเมนการวิเคราะห์โปรดดูที่ ซึ่งมาพร้อมกับการฝึกอบรมสดที่นำโดยผู้สอนและประสบการณ์โครงการในชีวิตจริง การฝึกอบรมนี้จะช่วยให้คุณเข้าใจ SAS ในเชิงลึกและช่วยให้คุณเชี่ยวชาญแนวคิดต่างๆของภาษาโปรแกรม SAS

มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นแล้วเราจะติดต่อกลับไป