home.kku.ac.th · web viewreading, combining, and modifying sas data setsคำน...

Post on 25-Feb-2020

4 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

316441

STATISTICAL DATA PROCESSING การประมวลผลขอมลเชงสถต

Reading, Combining, and Modifying SAS Data Sets

คำานยามสำาหรบการอาน , การรวมและการปรบเปลยนชดขอมล SAS

ในบรบทของการประมวลผลขอมลขนตอนขอตกลงการอาน, การรวมและการปรบเปลยนมความหมายเหลาน

การอานชดขอมล SAS

กลาวถงการเปดชดขอมล SAS และนำาการสงเกตเปนเวกเตอรขอมลโปรแกรมสำาหรบการประมวลผล

รวมชดขอมล SAS

หมายถงการอานขอมลจากสองอยางหรอมากกวาชดขอมล SAS และทำาการประมวลผลโดย

concatenating interleaving one-to-one reading การอานแบบหนงตอหนง one-to-one merging หนงตอหนงการรวม match-merging จบคการรวม updating a master data set with a transaction

data set. การปรบปรงขอมลหลกทมการตงคารายการชดขอมล

วธการการรวมชดขอมล SAS ทกำาหนดไวในการรวมชดขอมล SAS: วธการ

2

การแกไขชดขอมล SAS

การใชคำาสงปรบเปลยนในการปรบปรงขอมลในขอมลทอยใน SAS คำาสง MODIFY สามารถประหยดเนอทดสกเพราะมนแกไขขอมลโดยไมตองสรางสำาเนาของชดขอมล คณสามารถปรบเปลยนขอมล SAS โดยชดคำาสงการเขยนโปรแกรมหรอขอมลทถกเกบไวในขอมลชดอน

ภาพรวมของเครองมอ

เครองมอหลกทใชสำาหรบการอาน, การรวม, และการปรบเปลยนชดขอมล SAS ม 4 คำาสง คอ ตง, ผสาน, แกไขและปรบปรง หวขอนจะอธบายเครองมอเหลานและตวอยางทแสดงใหเหนวาพจนานกรม: สำาหรบขอมลทงหมดเกยวกบคำาสงเหลานอางองภาษา SAS

อานชดขอมล SAS

การอานชดขอมล SAS แบบเดยว

หากตองการอานขอมลจากทมอยในชดขอมล SAS ใชคำาสง SET ในตวอยางน ขนตอนการสรางชดขอมล PERM.TOUR155_PEAKCOST โดยการอานขอมลจากชดขอมล PERM.TOUR155_BASIC_COST และ โดยการค ำานวณค าส ำาหร บสามต วแปรใหมค อ Total_Cost, Peak_Cost, และ Average_Night_Cost

data perm.tour155_peakcost; set perm.tour155_basic_cost; Total_Cost=AirCost+LandCost; Peak_Cost=(AirCost*1.15);

3

Average_Night_Cost=LandCost/Nights;run;

อานจากชดขอมล SAS หลายชด

คณสามารถอานชดขอมล SAS ไดจากหลายชดขอมลรวมทงการรวมและแกไขขอมลในรปแบบทแตกตางกน คณสามารถรวมสองขอมลหรอมากกวาสองชดทปอนในชดขอมล เพอสราง output ชดขอมล รวมขอมลจากสองหรอมากกวาสองชดขอมลทปอนตวแปรทพบบอย

การอานและการเขยนของตวแปรและขอสงเกต

ถาคณไมไดสงให SAS เขยนตวแปรทงหมดและขอสงเกตทงหมดจากการปอนขอมลชดขอมล output คณสามารถควบคมตวแปรและขอสงเกตทคณตองการอานและเขยนโดยใชคำาสง SAS ขอมลตงคาตวเลอกและฟงกชน คำาสงและขอมลทตงคาตวเลอกทคณสามารถใชทระบไวในตารางตอไปน

คำาสงและตวเลอกทควบคมการอานและการเขยน

งาน ขอความ ข อ ม ล ต งคาตวเลอก

ต ว เ ล อ กระบบ

ต ว แ ป รควบคม

DROP DROP=

KEEP KEEP=RENAM RENAME

4

E =สงเกตการควบคม

WHERE WHERE=

FIRSTOBS=

subsetting IF

FIRSTOBS=

OBS=

DELETE OBS=REMOVEOUTPUT

ใชคำาสงหรอขอมลทตงคาตวเลอก (เชน KEEP = DROP และ =) เพอควบคมตวแปรและขอสงเกตทคณตองการทจะเขยนถงขอมลออกชดคำาสง WHERE เปนขอยกเวน: ควบคมซงสงเกตไดจากการอานในเวกเตอรขอมลโปรแกรมซงขนอยก บคาของตวแปร คณสามารถใชตวเลอกชดขอมล (รวมถง WHERE =) กบการปอนขอมลหรอชดขอมลทสงออกขนอยกบฟงกชนของพวกเขาและสงทคณตองการทจะควบคม นอกจากนคณยงสามารถใชตวเลอกระบบ SAS ในการควบคมขอมลของคณ

รวมชดขอมล SAS: แนวคดพนฐาน

สงทคณตองรกอนทจะรวมขอมลทเกบไวใน SAS หลาย ชดขอมล

โปรแกรมประยกตจำานวนมากจำาเปนตองมการปอนขอมลทอยในรปแบบทเฉพาะเจาะจงกอนทขอมลจะสามารถประมวลผลใหผลลพธทม

5

ความหมาย ขอมลมกจะมาจากหลายแหลงและอาจจะอยในรปแบบทแตกตางกน

ดงนนคณจงไมจำาเปนตองใชขนตอนกลางเหตผลทเกยวของและประมวลผลขอมลกอนทคณจะสามารถวเคราะหหรอสรางรายงานจากมน

ความตองการใชแตกตางกน แตมปจจยรวมกนสำาหรบการใชงานทงหมดทเขารวมและประมวลผลขอมล

เมอคณไดกำาหนดสงทคณตองการสงออกใหมลกษณะเหมอนคณจะตอง

- กำาหนดวธการปอนขอมลทเกยวของ- มนใจไดวาขอมลจะถกจดเรยงอยางถกตองหรอการจดทำาดชนใน

กรณทจำาเปน- เลอกวธการเขาถงทเหมาะสมในการประมวลผลขอมลของทาน- เลอกเครองมอ SAS ทเหมาะสมในการทำางานใหเสรจสมบรณ

จากสวธทขอมลเกยวของกน

ความสมพนธระหวางหลายแหลงทมาของขอมลทปอนเขาไปเมอแตละแหลงทมขอมลรวมกนทงในระดบกายภาพหรอตรรกะ ตวอยางเชนขอมลของพนกงานและแผนกขอมลอาจจะเกยวของผานตวแปรรหสพนกงานทหนคาทวไป อกชดขอมลอาจมหมายเลขลำาดบตวเลขทมคาบางสวนเหตผลทเกยวของไปใหขอมลทแยกตางหากกำาหนดโดยจำานวนการสงเกต

คณจะสามารถระบความสมพนธทมอยในชดขอมลของคณได ความรนเปนสงสำาคญสำาหรบการทำาความเขาใจวธการประมวลผลขอมลนำา

6

เขาเพอผลตผลลพธทตองการ ขอมลทงหมดทเกยวของกบสประเภทเหลานจะโดดเดนดวยวธการสงเกตความสมพนธระหวางชดขอมล:

- หนงตอหนง - หนงตอหลายคน- หลายคนตอหนง - หลายคนตอหลายคน

เพอใหไดผลลพธทคณตองการคณควรเขาใจวาแตละวธการเหลานรวมการสงเกตวธการแตละวธปฏบตตอคาทซ ำากนของตวแปรทพบบอยและวธการแตละวธปฏบตตอคาทขาดหายหรอคา Non matched ของตวแปรทพบบอย

บางสวนของวธการยงตองตรวจสอบกระบวนการกอนกอนทคณจะกำาหนดขอมลของคณโดยการเรยงลำาดบพวกเขาหรอโดยการสรางดชน ดคำาอธบายของแตละวธในการรวมชดขอมล SAS: โดยวธการ

หนงตอหนง

ในความสมพนธแบบหนงตอหนงโดยทวไปจะสงเกตคาเดยวในหนงชดขอมลทมความเกยวของกบการสงเกตเดยวจากทอนขนอยกบคาของหนงหรอมากกวาหนงตวแปรทเลอกความสมพนธแบบหนงตอหนงกหมายความวาคาของตวแปรทเลอกแตละ N เกดขนไมมากกวาหนงครงในแตละชดขอมล เมอคณทำางานกบตวแปรทเลอกหลายความสมพนธนแสดงใหเหนวาการรวมกนของคาแตละ N เกดขนไมมากกวาหนงคร งในขอมลแตละชด

ในตวอยางตอไปนเปนขอสงเกตในชดขอมลเงนเดอนและภาษทเกยวของโดยคาทวไปสำาหรบจำานวนพนกงาน

หนงตอหนงความสมพนธ

7

หนงไปหลายและหลายไปหนง

หนงตอหลายคนหรอหลายตอหนงความสมพนธระหวางชดปอนขอมลแสดงใหเหนวาหนงในชดขอมลทมมากทสดคนหนงสงเกตทมคาเฉพาะของตวแปรทเลอก แตใสชดอน ๆ ขอมลอาจมมากกวาหนงการเกดขนของแตละ มลคา เมอคณทำางานกบตวแปรทเลอกหลายความสมพนธนแสดงใหเหนวาการรวมกนของคาแตละ N เกดขนไมไดตงมากกวาหนงครงในหนงขอมล แตอาจเกดขนไดมากกวาหนงครงในขอมลอน ๆ ทตง ลำาดบทชดขอมลทมการประมวลผล input กำาหนดวาความสมพนธเปนหนงตอหลายคนหรอหลายตอหนง

ในตวอยางตอไปนเปนขอสงเกตในขอมลชดหนงและสองมความสมพนธกนโดยคาทวไปสำาหรบคา A. ตวแปรทไมซำากนในขอมลชดหนง แตไมไดอยในขอมลสองชด

ความสมพนธแบบหนงตอหลาย

8

ในตวอยางตอไปนเปนขอสงเกตในขอมลชดหนงสองและสามมความสมพนธกนโดยคาทวไปสำาหรบตวแปร ID คาของ ID ทไมซ ำากนในชดขอมลทหนงและสาม แตไมไดอยในสอง ส ำาหรบคา 2 และ 3 จาก ID, ความสมพนธแบบหนงตอหลายคนอยระหวางการสงเกตในขอมลชดหนงและสองและความสมพนธหลายตอหนงอยระหวางการสงเกตในขอมลสองชดและสาม

หนงไปยงหลายและความสมพนธหลายตอหนง

หลายตอหลายคน

หมวดหมหลายตอหลายคนแสดงใหเหนวาขอสงเกตจากหลาย input แตละชดขอมลอาจจะเกยวของขนอยก บคาของหนงหรอมากกวาหนงตวแปรทพบบอย

ในตวอยางตอไปนเปนขอสงเกตในขอมลชด BREAKDOWN และการบำารงรกษาทเกยวของโดยคาทวไปสำาหรบรถยนตตวแปร คาของยานพาหนะทไมซ ำากนในแตละชดขอมลความสมพนธหลายตอหลายคนอยระหวางการสงเกตเหลานในชดขอมลสำาหรบคา AAA และ CCC ของยานพาหนะ

9

ความสมพนธหลายตอหลายคน

วธการเขาถงแบบเรยงตามลำาดบเมอเทยบกบตรง

ภาพรวม

เมอคณไดสรางความสมพนธของขอมลขนตอนตอไปคอการกำาหนดโหมดทดทสดของการเขาถงขอมลทเกยวของกบขอมล คณสามารถเขาถงการสงเกตตามลำาดบในลำาดบทพวกเขาปรากฏอยในแฟมทางกายภาพ หรอคณสามารถเขาถงไดโดยตรงทคณสามารถตรงไปทการสงเกตในขอมล SAS โดยไมตองมการประมวลผลการสงเกต

เขาถงลำาดบ

วธทงายทสดและอาจจะพบมากทสดในการประมวลผลขอมลทมขอมลขนตอนคอการอานการสงเกตในขอมลชดตามลำาดบ คณสามารถอานการสงเกตแบบลำาดบตลาดหลกทรพยฯ ผสานการปรบปรงหรอปรบเปลยนงบ คณยงสามารถใช SAS ฟงก ช น I / O ไฟล เชน เป ด FETCH และ FETCHOBS

การเขาถงโดยตรง

ชวยใหโปรแกรมการเขาถงการสงเกตเฉพาะหนงในสองวธ:

10

- จำานวนการสงเกต- โดยคาของหนงหรอมากกวาหนงตวแปรผานดชนงายหรอคอมโพสต

ในการเขาถงการสงเกตโดยตรงจากการสงเกตจ ำานวนของพวกเขาใช POINT = ตวเลอกกบตลาดหลกทรพยหรอแกไขคำาสง POINT = ชอตวเลอกตวแปรทมคากำาหนดของตลาดหลกทรพยสงเกตหรอแกไขคำาสงทอานในปจจบน ในการเขาถงการสงเกตตรงตามคาของหนงหรอมากกวาหนงตวแปรทกำาหนดกอนอนคณตองสรางดชนสำาหรบตวแปรแลวอานขอมลทตงคาการใชตวเลอกทสำาคญงบ กบตลาดหลกทรพยหรอแกไขคำาสง ดชนเปนโครงสรางทแยกตางหากทมคาขอมลของตวแปรสำาคญหรอตวแปรคกบระบตำาแหนงสำาหรบขอสงเกตทมคา

หมายเหต: คณยงสามารถใช SAS ฟงกชน I / O ไฟลเชน CUROBS, หมายเหต POINT และ FETCHOBS ในการเขาถงการสงเกตจำานวนสงเกต

- ภาพรวมของวธการในการรวมขอมล SAS ชด- คณสามารถใชวธการเหลานจะรวมชดขอมล SAS:- เชอมโยง- Interleaving- การอานแบบหนงตอหนง- หนงตอหนงการควบรวมกจการ- การผสาน- การปรบปรง- การเชอมโยง

11

รปตอไปนแสดงใหเหนถงผลของการเชอมโยงขอมลทงสองชด SAS เชอมโยงชดขอมลผนวกขอสงเกตจากขอมลชดหนงไปยงอกชดขอมลขนตอนทอานขอมล data1 เรยงตามลำาดบจนกวาจะสงเกตทกคนไดรบการประมวลผลแลวอาน data2 ชดรวมขอมลมผลของการเชอมโยงกน โปรดทราบวาชดขอมลทมการประมวลผลในลำาดบทแสดงไวในงบตลาดหลกทรพยฯ

เชอมโยงขอมลสองชด

interleaving

รปตอไปนแสดงใหเหนถงผลของการ interleaving ขอมลสองชด SAS Interleaving สงเกต intersperses สองหรอมากกวาของชดขอมลทอยบนพนฐานของหนงหรอมากกวาหนงตวแปรทพบบอย ขอมลชดรวมกนแสดงใหเหนถงผลทตามมา

Interleaving ขอมลสองชด

12

การอานคาแบบหนงตอหนงและการผสานคาหนงตอหนง

รปตอไปนแสดงใหเหนถงผลของการอานแบบหนงตอหนงและแบบหนงตอหนงการควบรวมกจการ การอานหนงตอหนง รวมสงเกตจากสองหรอมากกวา SAS ชดขอมลโดยการสรางขอสงเกตทมทงหมดของตวแปรจากขอมลในแตละสวนรวมในการตงคา ขอสงเกตทจะรวมกนข นอยก บตำาแหนงสมพทธของพวกเขาในแตละชดขอมลนนคอครงแรกทสงเกตในขอมลชดหนงกบครงแรกในการอน ๆ และอน ๆขนตอนทขอมลจะสนสดหลงจากทมนไดอานสงเกตดจากขอมลทมขนาดเลกตง คาการอานแบบหนงตอหนง การควบรวมจะคลายกบการอานแบบหนงตอขอยกเวนทสอง: คณใชงบรวมแทนของงบตลาดหลกทรพยและขนตอนทอานขอมลการสงเกตทงหมดจากขอมลทงหมดทกำาหนด ขอมลชดรวมกนแสดงใหเหนถงผลทตามมา

13

การผสาน

รปตอไปนแสดงใหเหนถงผลของการแขงขนรวมกน ตรงกบการรวมรวมขอสงเกตจากสองหรอมากกวา SAS ชดขอมลในการสงเกตเดยวในขอมลใหมตงขนอยกบคาของหนงหรอมากกวาหนงตวแปรทพบบอย

การรวมขอมลสองชด

14

การอปเดตปรบปรง

รปตอไปนแสดงใหเหนถงผลของการปรบปรงหลกชดขอมล การปรบปรงจะใชขอมลจากการสงเกตในขอมลการทำาธรกรรมการตงคาเปนลบเพมหรอเปลยนแปลงขอมลในการสงเกตในขอมลหลกตง คณสามารถปรบปรงขอมลหลกตงคาโดยใชคำาสง UPDATE หรองบ MODIFY ถาคณใชคำาสง UPDATE ชดของคณใสขอมลจะตองถกจดเรยงโดยคาของตวแปรทระบไวในแถลงการณของ (ในตวอยางน MASTER และรายการทมทงเรยงตามป.) ถาคณใชคำาสงปรบเปลยนการปอนขอมลของคณไมจำาเปนจะตองเรยงลำาดบ การ UPDATE แทนทแฟมทมอยดวยไฟลใหมชวยใหคณสามารถเพมลบหรอเปลยนชอคอลมน ทปรบเปลยนการดำาเนนการปรบปรงในสถานทโดยการเขยนใหมเฉพาะระเบยนทมการเปลยนแปลงหรอโดยการผนวกระเบยนใหมไปยงจดสนสดของแฟม

โปรดสงเกตวาโดยคาเร มตนการปรบปรงและแกไขไมใหแทนทคาทหายไป จะไมใชขอมลหลกและมคาทหายไปจากขอมลการทำาธรกรรม

การอปเดตขอมลชดปรญญาโท

15

ภาพรวมของเครองมอสำาหรบการรวมขอมล SAS ชด

ใชงบและวธการ

16

เมอคณเขาใจพนฐานของการสรางความสมพนธระหวางขอมลวธการในการเขาถงขอมลและวธการทคณสามารถรวมชดขอมล SAS, คณสามารถเลอกจากความหลากหลายของเคร องมอ SAS สำาหรบการเขาถงการประกอบและการประมวลผลขอมลของคณ ตารางตอไปนจะมรายการและคำาอธบายงบสน ๆ ขนตอนขอมลและขนตอนทคณสามารถใชสำาหรบการรวมขอมล SAS ชด

งบหรอวธการในการรวมขอมล SAS ชด

วธการเชอมตอ

ค ำาช แ จ งหรอขนตอน

การด ำา เน นการดำาเนนการ

มลำาดบ โดยตรง

สามารถใชกบคำาสง

ความคดเหน

จำาแนกเปน

ค ว บ ค ม ก า รด ำาเน นงานของตลาดหล กทรพย , ผ ส า น , UPDATE ห ร อแกไขคำาสงในขนตอนขอม ลและตงคาตวแปรจดกลมพเศษ

NA NA NA การประมวลผ ล โ ด ย ก ล มเ ป น ว ธ ก า รส ง เ ก ต ก า รประมวลผลทมค าเด ยวก นของหนงหรอมากกวาหน งตวแปร

ผสาน อานสงเกตจากสองหรอมากกวา SAS ช ด ข อ ม ลและรวมพวกเขาลงในการสงเกตเดยว

X X เมอใชรวมกบจำาแนกขอมลต อ ง ถ ก จ ดเรยงหรอการจดทำาดชนเมอจ ำา แ น ก ต า ม

17

ตวแปรแกไข   ส ง เ ก ต

กระบวนการ ในขอม ล SAS ตงอ ย ใ น ส ถ า น ท (ค ม ช ด ก บ ก า รปรบปรง.)

X X X เ ร ย ง ข อ ม ลห ร อ จ ด ท ำาดชนไมจำาเปนสำาหรบการใช งานกบกตาม แ ต จ ะ ม ก า รแนะนำาในการดำาเนนงาน

ตงคา อ านสงเกตจากห น ง ห ร อ SAS ชดขอมล

X X X ใ ช = KEY ห ร อ POINT = เลอกคำาสงสำาหรบการเขาถ ง ข อ ม ลโดยตรง

ปรบปรง

ใ ช ก บ ก า ร ท ำาธ ร ก ร ร ม ก า รสงเกตในชดหลกข อ ม ล SAS UPDATE ไ ม สามารถปรบปรงการสงเกตการณในสถานท ; มนผ ล ต ส ำา เ น า ท ปรบปรงจากชดข อ ม ล ท เ ป นปจจบน

 

X X ท ง ต น แ บ บและชดขอมลก า ร ท ำาธรกรรมตองถ ก จ ด เ ร ย งตามหรอการจดทำาดชนโดยตวแปร

18

ผ น ว ก proc

เพ มการสงเกตจากขอมล SAS ตงไวท ปลายอกชดขอมล SAS

X

PROC SQL (หมายเห ต ตาราง 1)

  อานสงเกตจากห น ง ห ร อ SAS ช ดขอม ล ; อ านสงเกตจากไดถง 32 SAS ช ดขอมลและรวมใหเ ป น ข อ ส ง เ ก ตเ ด ย ว ป ร ง แ ต งสงเกตในขอมล SAS ต ง อ ย ใ นสถานทได อยางง า ย ด า ย ผ ล ตผ ล ต ภ ณ ฑ Cartesian

X X X ทงสามวธการเขาถ งท มอย ในพรอค SQL แตวธการเขาถ ง ถ ก เ ล อ กโดยการเพ มประสทธภาพภายใน

หมายเหตตาราง 1: PROC SQL เป นการน ำา SAS จากภาษาของแบบสอบถามทมโครงสราง นอกเหนอไปจากความสามารถในการคาด SQL, PROC SQL รวมถงความสามารถเพมเตมทเฉพาะเจาะจงเพอ SAS เชนการใชรปแบบและภาษา SAS แมโคร

วธการเตรยมชดขอมล

กอนทจะรวมชดขอมล SAS, ตองปฏบตตามแนวทางนจะใหผลลพธทคณตองการ:

19

- รโครงสรางและเนอหาของชดขอมล- มองไปทแหลงทมาของปญหาทพบบอย- ตรวจสอบใหแนใจวาขอสงเกตทอยในลำาดบทถกตองหรอวาพวกเขา

สามารถเรยกดในลำาดบทถกตอง (เชนการใชดชน)- ทดสอบโปรแกรมของคณ- รโครงสรางและเนอหาของชดขอมล

เพอชวยในการกำาหนดวธการทขอมลของคณมความเกยวของใหดท โครงสรางของชดขอมล เพอดโครงสรางของชดขอมลดำาเนนการตามขนตอนชดขอมลขนตอนเนอหาหรอเขาถงหนาตาง SAS ในสภาพแวดลอม windowing ของคณจะแสดงขอมลทบงช ขอมลบงชรวมถงจำานวนของการสงเกตในแตละชดขอมลชอและคณลกษณะของแตละตวแปรและตวแปรทจะรวมอยในดชน เมอตองการพมพตวอยางของการสงเกตใชขนตอนการพมพหรอขนตอนการรายงาน คณยงสามารถใชฟงกช นเชน VTYPE, VLENGTH และ VLENGTHX เพอแสดงขอมลบงชทเฉพาะเจาะจง สำาหรบขอมลทสมบรณเกยวกบฟงกชนเหลานใหดอางอง SAS ภาษา: พจนานกรม

- ถาโปรแกรมของคณไมไดดำาเนนการอยางถกตองทบทวนการปอนขอมลของคณสำาหรบขอผดพลาดตอไปน:

ตวแปรทมชอเหมอนกน แตทเปนตวแทนของขอมลทแตกตาง

SAS รวมถงตวแปรเพยงตวแปรเดยวของชอทก ำาหนดในชดขอมลใหม หากคณกำาลงผสานขอมลสองชดทมตวแปรทมช อเดยวกน แตขอมลทแตกตางกนคาจากขอมลชดลาสดทมการอานเขยนไปคาจากชดขอมลอน ๆ เพอแกไขขอผดพลาดคณสามารถเปลยนชอตวแปรกอนทคณจะรวมชดขอมลโดยใช RENAME = ตวเลอกชดขอมลในตลาดหลกทรพยแหงประเทศไทย, UPDATE หรอผสานคำาสงหรอคณสามารถใชชดขอมลขนตอน

20

ตวแปรทรวมกนกบขอมลเดยวกน แตคณสมบตทแตกตางกน

ทาง SAS จดการกบความแตกตางเหลานขนอยกบคณลกษณะใดบางทแตกตางกน:

- ประเภทแอตทรบวต ถาแอตทรบวตประเภททแตกตางกน, SAS จะหยดการประมวลผลขอมลขนตอนและปญหาขอผดพลาดทระบวาตวแปรทไมเขากน

เพอแกไขขอผดพลาดนคณตองใชขนตอนทขอมลกบตวแปรทสรางใหมอกงบ SAS ทคณใชขนอยกบลกษณะของตวแปรแอททรบชน

ถาแอตทรบวตระยะเวลาทแตกตางกน, SAS จะใชเวลาระยะเวลาจากขอมลชดแรกทมตวแปร ในตวอยางตอไปนทกชดขอมลทระบไวในงบรวม มการสะสมไมลกบตวแปร ใน Quarter1 ยาวของการสะสมไมลกบตวแปรคอสไบต; ใน QUARTER2 เปนแปดไบตและในไตรมาสท 4 QUARTER3 และมนเปนหกไบต ในการแสดงผลขอมลการตงคารายป, ความยาวของการสะสมไมลก บต วแปรท เป นไบตท ส ซ งเป นระยะเวลาท ได มาจาก Quarter1

เชน ขอมลรายป;

    รวม Quarter1 quarter2 quarter3 ไตรมาสท 4;

    โดยบญช;

ทำางาน;

21

เมอตองการแทนทคาเรมตนและกำาหนดระยะเวลาในตวเองระบความยาวทเหมาะสมในงบยาวทนำาไปสตลาดหลกทรพยฯ ผสานหรอคำาสง UPDATE

คณสมบตฉลากรปแบบและการจดรปแบบ

ถาแอตทรบวตเหลานจะแตกตางกน SAS จะใชแอตทรบวตจากขอมลชดแรกทมตวแปรทมคณลกษณะรปแบบหรอการจดรปแบบตามทคณระบอยางชดเจนแทนทคาเร มตน ถาทกชดขอมลทมคณสมบตทระบไวอยางชดเจนอยางใดอยางหนงทระบไวในขอมลชดแรกแทนทคนอน ๆ เพอใหมนใจวาการสงออกชดใหมขอมลมแอตทรบวตทคณตองการใหใชค ำาสง attrib

คณยงสามารถใช SAS ฟงกช น I / O ไฟลเชน VLABEL, VLABELX และอน ๆ ทฟงกชนขอมลไดหลากหลายเพอการเขาถงขอมลน ส ำาหรบขอม ลท สมบ รณ เก ยวก บฟงก ช น เหล าน ให ด อ างอ ง SAS ภาษา : พจนานกรม

ตรวจสอบการสงซอทถกตอง

ถาคณใชการประมวลผลโดยกลมทมงบ UPDATE ตลาดหลกทรพยและผสานรวมชดขอมลใหแนใจวาขอสงเกตในชดขอมลจะถกจดเรยงในลำาดบของตวแปรทระบไวในคำาสงหรอวาชดขอมล มดชนทเหมาะสม ถาคณใชจำาแนกกลมในการประมวลผลคำาสงแกไขขอมลคณไมจำาเปนตองเรยงลำาดบ แตเรยงลำาดบขอมลปรบปรงประสทธภาพจำาแนกเปนตวแปรหรอตวแปรจะตองตรงกนทงสองชดขอมลและพวกเขาจะตองมคณสมบตเดยวกน สำาหรบขอมลเพมเตมโปรดดทการประมวลผลโดยกลมในขนตอนทขอมล

การทดสอบโปรแกรมของคณ

เปนขนตอนสดทายในการจดทำาชดขอมลของคณคณควรทดสอบโปรแกรมของคณ สรางขนาดเลกชวคราวชดขอมล SAS ทมตวอยางของ

22

การสงเกตวาในการทดสอบทงหมดของตรรกะของโปรแกรม ถาตรรกะของคณเปนความผดพลาดและคณไดรบผลลพธทไมคาดคดคณสามารถใชขนตอนการดบกขอมลในการแกปญหาโปรแกรมของคณ สำาหรบขอมลทสมบรณเกยวกบข นตอนการดบกเกอรขอมลดอ างอง SAS ภาษา: พจนานกรม

Combining SAS Data Sets: Methods การรวมชด ขอมล SAS: วธการ

คำานยาม

การเชอมโยงชดขอมลคอการรวมขอมลสองชดหรอมากกวา ขอมลชดหนงจากทอน ๆ ทเปนขอมลชดเดยว จำานวนของการสงเกตชดขอมลใหมคอผลรวมของจำานวนของการสงเกตในชดขอมลเดม คำาสงของการสงเกตเปนลำาดบ สงเกตคาทงหมดทไดจากขอมลชดแรก ตามดวยการสงเกตขอมลทงหมดจากชดขอมลทสองและอน ๆ

23

ในกรณอยางงาย ทกชดการปอนขอมลทมตวแปรเดยวกน ถาชดขอมลทปอนเขามตวแปรทแตกตางกนขอสงเกตจากขอมลชดหนงมคาทหายไปสำาหรบตวแปรทกำาหนดไวเฉพาะในชดขอมลอน ๆ ในทงสองกรณตวแปรในชดขอมลใหมจะเหมอนกบตวแปรในขอมลชดเกา

รปแบบ

ใชรปแบบของคำาสง SET นเพอเชอมชดขอมล:

ตงชดขอมล (s);

ทไหน

ขอมล - ตงคา

ระบชอทถกตองในชดขอมล SAD

สำาหรบคำาอธบายทสมบรณของคำาสงใหดอางองภาษา SAS: พจนานกรม

ขนตอนการประมวลผลขอมลระหวางการเชอมขอมล

ขนตอน การรวบรวม

SAS อานขอมล บงชของแตละ ชดขอมลท มช ออยใน ค ำาสงของ SET แลวสรางโปรแกรม เวกเตอร ขอมลทม ตวแปรทงหมดจากชดขอมลทงหมด เชนเดยวกบตวแปร ทสรางขนโดยขนตอนการสรางขอมล

การดำาเนนการ - ขนท 1

SAS อานคร งแรกสงเกตจากขอมลแรกทกำาหนดใหเปนเวกเตอร ขอมลโปรแกรมทจะประมวลผลครงแรกดไดจากคาสงเกต และดำาเนนกา

24

รอนๆ ในขนตอนขอมลจากนนจะเขยนเนอหาของโปรแกรมเวกเตอร ขอมลไปยงชด ขอมลใหม

SET ไมรเซตคาในเวกเตอร ขอมลโปรแกรมจะหายไปยกเวนสำาหรบตวแปรทมคา การคำานวณ หรอทไดรบมอบหมายในระหวางขนตอน ของขอมลตวแปรทถกสรางขน โดยขนตอนทจะถกกำาหนดใหหายไปทจดเรมตนของการทำาซำา คอขอมลแตละขนตอน ตวแปร ทอานจากชด ขอมลไมได

การดำาเนนการ - ขนท 2

SAS ยงคง ทจะอานคาสงเกตตามเวลา จากขอมลแรก ทก ำาหนดไวจนกวาจะพบตวบงชททายของแฟม คาของตวแปรในโปรแกรมเวกเตอร ขอมลจะถกตงแลว หายไปและเรมตนการอาน SAS สงเกตจากชดขอมลทสอง และอน ๆ จนกวาจะอานขอสงเกตทงหมดจากขอมลทงหมดทกำาหนด

ตวอยางท 1: ใชการเชอมขอมลในขนตอนขอมล

ในตวอยางนแตละชดขอมลมตวแปรทวไปและจำานวน และขอสงเกตทมการจดเรยงตามลำาดบจากคาของทใชรวมกน โดยทวไปแลวคณเชอมชดขอมล SAS ทมตวแปรเดยวกน ในกรณนแตละชดขอมลนอกจากนยงมตวแปรทไมซำากนเพอแสดงผลกระทบของการรวมชดขอมลทชดเจนมากขน ตอไปนแสดงใหเหนวาสตวและพนธพชทนำาเขาชดขอมลในหองสมดทถกอางองตวอยางโดย Libref:

ตวอยาง:

25

โปรแกรมตอไปนใชคำาสง SET เพอเชอมชดขอมลแลวพมพผล:

เ ม อ เ ช อ ม ช ด ข อ ม ล แ ล ว (DATAStep)

ทำาใหเกดการเชอมโยงกนกบชดขอมลทม 12 ขอสงเกตซงเปนผลรวมของการสงเกตจากชดขอมลรวมโปรแกรมเวกเตอร ขอมลมตวแปรทงหมด

26

จากขอมลทงหมดทกำาหนด คาของตวแปรทพบในหนงชดขอมล แตไมไดอยในอกชดขอมล ถกตงคาใหหายไป

ตวอยางท 2: เชอมขอมลโดยใช SQL

คณยงสามารถใชภาษา SQL เพอเชอมตาราง ในตวอยางน SQL อานแถวในตารางทงสองและสรางตาราใหมทช อรวมกน ตอไปนแสดงใหเหน YEAR1 และ YEAR2 ตาราง input:

รหส SQL ตอไปนสรางและพมพตารางรวมกน

proc sql; title 'SQL Table COMBINED'; create table combined as select * from year1 outer union corr select * from year2; select * from combined;quit;การเชอมตาราง (SQL)

27

ไฟลตอทาย

แทนการเชอมโยงขอมลหรอชดตาราง คณสามารถผนวกพวกและสรางผลเชนเดยวกบการเชอม SAS เชอมชดขอมล (ขนตอนขอมล) และตาราง (SQL) โดยการอานแตละแถวของขอมลในการสรางไฟลใหม เพอหลกเลยงการอานบนทกทงหมดคณสามารถผนวกไฟลสองไฟลแรกโดยใชขนตอนการผนวก:

proc append base=year1 data=year2;run;

YEAR1 ไฟลจะมแถวทงหมดจากตารางทงสอง

หมายเหต: คณไมสามารถใช PROC ผนวกกบเพมขอสงเกตถงขอมล SAS ตงอยในหองสมดลำาดบ [cautionend]

ประสทธภาพ

28

หากไมมการประมวลผลเพมเตมเปนสงจำาเปนทใช PROC ผนวกหรอคำาสงทผนวกอยในฐานขอมล PROC มประสทธภาพมากขนกวาการใชขนตอนทขอมลการเชอมชดขอมล

การสอดใบแทรกคำานยาม

การสอดใบแทรกใช SET และคำาสงทจะรวมขอมลหลายชดเปนหนงในดาตาเซตใหม จำานวนของการสงเกตในชดขอมลใหมคอผลรวมของจำานวนของการสงเกตจากชดขอมลเดม แตขอสงเกตในชดขอมลใหมจะถกจดเรยงโดยคาของตวแปรตาม หรอตวแปร และในแตละกลมตามคำาสงของขอมลในชดทพวกเขาเกดขน คณสามารถสอดใบแทรกชดขอมลโดยใชจำาแนกเปนตวแปรหรอโดยใชดชน

รปแบบ

ใชรปแบบของคำาสง SET เพอสอดใบแทรกขอมลชดนเมอคณใชจำาแนกเปนตวแปร:

29

SET ขอมลชด (s);

จำาแนกเปนตวแปร (s);

Whereขอมลการตงคา

ระบชอหนงระดบ ชอสองระดบ หรอหนงในขอมล SAS ชอชดพเศษ

ตวแปร

ระบตวแปรโดยทชดขอมลจะถกจดเรยงแตละตวแปรเหลาน จะเรยกวาเปนตวแปรสำาหรบขอมลทเปนปจจบนหรอขนตอน PROC

ใชรปแบบของคำาสง SET เพอสอดใบแทรกขอมลชดนเมอคณใชดชน:

SET data-set-1 . . . data-set-n KEY= index; Where

ขอมลการตงคา

ระบชอหนง ระดบชอสอง ระดบหรอหนงในขอมล SAS ชอชดพเศษ

ดชน

ใหการเขาถง nonsequential ไปสงเกตในชดขอมล SAS ซงจะขนอยกบคาของตวแปรดชนหรอคย

สำาหรบคำาอธบายทสมบรณของคำาสงของ SET รวมทง SET ทมตวเลอก = KEY ดอางองภาษา SAS : พจนานกรม

30

ตองเรยง

กอนทคณจะสามารถสอดใบแทรกชดขอมลสงเกตการณจะตองถกจดเรยงหรอจดกลมตามตวแปรเดยวกนหรอตวแปรทคณใชในคำาสงหรอคณตองมดชนทเหมาะสมสำาหรบชดขอมล

ขอมลขนตอนการประมวลผลในระหวางการสอดใบแทรก

ขนตอนการรวบรวม

SAS อานขอมลบงชของแตละชดขอมลทมชออยในคำาสงของ SET แลวสรางโปรแกรมเวกเตอรขอมลทมตวแปรทงหมดจากชดขอมลทงหมดเชนเดยวกบตวแปรทสรางขนโดยขนตอนขอมล

SAS สราง FIRST.variable และ LAST.variable สำาหรบตวแปรทระบไวในแตละคำาสง

การดำาเนนการ - ขนท 1

SAS เปรยบเทยบครงแรกจากคาสงเกต แตละชดขอมลทมชอในคำาสง SET ทจะกำาหนดโดยกลม ควรจะปรากฏขนคร งแรกในขอมลใหมทกำาหนด อานทงหมดไดจากการสงเกตโดยกลมแรกจากชดขอมลทเลอก หากจำาแนกเปนกลมทปรากฏอยมากกวาหนงชดขอมลกอานจากชดขอมลในลำาดบทปรากฏใน SET คาของตวแปรในโปรแกรมเวกเตอรขอมลถกตงคาใหหายไปเวลา SAS เรมตนจะตองอานชดขอมลใหมและจำาแนกตามกลมการเปลยนแปลง

การดำาเนนการ - ขนท 2

31

SAS เปรยบเทยบขอสงเกตตอไปจากขอมลแตละชดเพอตรวจสอบตอไปโดย เรมตนการอานการสงเกตจากขอมลทกำาหนดในคำาสงของ SET ทมขอสงเกตสำาหรบกรณนโดยสงเกตกลม SAS ตอไปจนกวาจะไดอานขอสงเกตทงหมดจากชดขอมล

ตวอยางท 1: การสอดใบแทรกในกรณทงายทสด

ในตวอยางนแตละชดขอมลทมตวแปรจำาแนกเปนธรรมดาและขอสงเกตทมการจดเรยงตามลำาดบจากคาของตวแปรจำาแนกเปน ตอไปนแสดงใหเหนวาสตวและพนธพชทนำาเขาชดขอมลในหองสมดทถกอางองโดยตวอยาง libref:

โปรแกรมตอไปนใช SET และสอดใบแทรกชดขอมลและพมพผล

32

Interleaved Data Sets

จากขอมลผลการตง INTERLEAVING ม 12 ขอสงเกตซงเปนผลรวมของการสงเกตจากชดขอมลรวมขอมลชดใหมทประกอบดวยตวแปรทงหมดจากขอมลทงสองชด คาของตวแปรทพบในหนงชดขอมล แตไมไดอยในทอน ๆ มการกำาหนดใหหายไปและสงเกตการณจดเรยงโดยคาของตวแปรเชงจำาแนก

ตวอยางท 2: การสอดใบแทรกดวยคาซำาของตวแปรเชงจำาแนก

ถาชดขอมลทมคาทซำากนของตวแปรสงเกตจะถกเขยนลงขอมลใหมทตงอยในลำาดบทเกดขน ในชดขอมลเดม ตวอยางนมคาทซ ำากนจากการจำาแนกตามตวแปรทใชรวมกน ตอไปนแสดงใหเหน ANIMAL1 และ PLANT1 ชดปอนขอมล:

33

โปรแกรมตอไปนใช SET และสอดใบแทรกชดขอมลและพมพผล:

Interleaved Data Sets with Duplicate Values of the BY Variable

34

จำานวนของการสงเกตในชดขอมลใหมคอผลรวมของการสงเกตในชดขอมล ขอสงเกตทจะถกเขยนลงขอมลใหมทตงอยในลำาดบทพวกเขาเกดขนในชดขอมลเดม

ตวอยางท 3: การสอดใบแทรก ทแตกตางกนดวยคาในแตละชดขอมล

ขอมลชด ANIMAL2 และ PLANT2 มทงคาทมอยในขอมลชดหนง แตไมไดอยในทอน ๆ ตอไปนแสดงใหเหน ANIMAL2 และชดปอนขอมล PLANT2:

โปรแกรมนใช SET และสอดใบแทรกชดขอมลเหลานและพมพผล:

35

ชดขอมลผลการศกษามขอสงเกต 9 จดโดยคาของตวแปรเชงจำาแนก

ความคดเหนและการเปรยบเทยบ

ในภาษาอน ๆ ทผสานคำาทใชมกจะหมายถงการสอดใบแทรก SAS สงวนผสานสำาหรบการดำาเนนงานในระยะทสงเกตจากสองหรอมากกวาชดขอมลทมการรวมกนเปนหนงขอสงเกต ขอสงเกตในชดขอมลบรรณนทศนจะไมรวมพวกเขาจะถกคดลอกจากชดขอมลตนฉบบในลำาดบของคาของตวแปรเชงจำาแนก

ถาตารางหนงมหลายแถวตามทขนตอนเกบรกษาขอมลการสงซอของแถวเหลานนอยในผลลพธ

36

เมอตองการใชขนตอนขอมลทตารางขอมลจะตองถกจดเรยงอยางเหมาะสมหรอการจดทำาดชน SQL ไมจำาเปนตองปอนขอมลไปยงตารางจะอยในลำาดบ

การอานแบบ One-to -One

คำานยาม

การอานแบบ One-to -One รวม คาสงเกตจากสองหรอมากกวาสองชดขอมล เปนหนงในการสงเกตโดยใช สองคนหรอมากกวา SET กำาหนดใหอาน ขอสงเกตทเปนอสระจากแตละชดขอมล กระบวนการนจะ

37

เรยกวา การจบค แบบหนงตอหนง ขอมลชดใหมทประกอบดวย ตวแปรทงหมดจากชดขอมลของทาน จำานวนของการสงเกตในชดขอมลใหม คอจำานวนของการสงเกตในขอมลเดมทมขนาดเลก ถาชดขอมลทมตวแปร ทวไป คาทอานไดจากขอมลลาสด ทกำาหนดใหแทนทคาทถกอานจากกอนหนานในชดขอมล

รปแบบ

ใช รปแบบของคำาสงใน SET น สำาหรบการอาน แบบหนงตอ หนง :

SET ขอมล ตง 1;

SET ขอมล ตง 2;

Where

ขอมล ชด - 1

ระบชอ หนง ระดบชอ สอง ระดบ หรอหนงในขอมล SAS พเศษ ชอ ชด ขอมล ชด - 1 เปนไฟล แรกทขนตอนท อาน ขอมล

ขอมล ชด - 2

ระบชอหนงระดบ ชอสองระดบ หรอหนงในขอมล SAS พเศษ ชอ ชดขอมล ชด - 2 เปนไฟล ทสองขนตอนทอานขอมล

ขอควรระวง:

38

ใชความระมดระวงเมอคณรวมชดขอมล กบ SET หลาย ๆ SET ท จะรวมการสงเกต สามารถใหผลลพธท ไมพงปรารถนา ทดสอบโปรแกรมของคณ ตวอยางทเปนตวแทนของชดขอมล กอนทจะใช วธน ในการ รวบรวม [ cautionend ]

สำาหรบ คำาอธบายทสมบรณของคำาสง SET ใหด อางอง SAS ภาษา: พจนานกรม

ขอมล ขนตอน การประมวลผล ในระหวางการอาน One-to -One

ขนตอน การรวบรวม

SAS อานขอมลบงชของขอมลแตละชดมชออยในคำาสงของ SET แลวสรางโปรแกรมเวกเตอร ขอมลทม ตวแปรทงหมดจากชดขอมลทงหมด เชนเดยวกบตวแปรทสรางขนโดยขนตอน ขอมล

การดำาเนนการ - ขนท 1

เมอ SAS รน คำาสง SET แรก SAS อาน คร งแรกทสงเกตจาก ขอมลแรกทกำาหนดใหเปนเวกเตอร ขอมลโปรแกรม SET สองอาน คร งแรกทสงเกตจากขอมลทสอง ทกำาหนดเปนเวกเตอร ขอมลโปรแกรม ถาทงชด ขอมลทมตวแปรเดยวกนคาจาก ขอมลทสองทก ำาหนด ใหแทนทคาจากขอมลชดแรก แมวาคาทขาดหายไป หลงจากทไดอานครงแรกทสงเกตจากชดขอมลทผานมาและ การดำาเนนการอน ๆ ในขนตอน ขอมลท SAS เขยน เนอหาของขอมลเวกเตอร โปรแกรมดาตาเซตใหม SET ไมรเซต คาในเวกเตอร ขอมลโปรแกรม จะ หายไปยกเวนสำาหรบตวแปรเหลานนทถกสรางขน หรอ ไดรบมอบหมาย คาระหวางการขนตอน ขอมล

39

การดำาเนนการ - ขนท 2

SAS ยงคงอานจากขอมลชดหนงแลว สวนตวอน ๆจนกวาจะ ตรวจพบตวบงชสนสดของแฟมในหนงชดขอมล SAS จะหยดการประมวลผลดวยการสงเกตลาสดของชดขอมลทสนทสด และไมไดอานขอสงเกตของทเหลอจากชดขอมลอกตอไป

ตวอยางท 1: อานแบบ One-to-One : กำาลงดำาเนนการเปนจำานวนเทากนสงเกต

ขอมล SAS ชดพชและสตวทงสองมตวแปรทใชรวมกนและมการจดเรยงโดยคาของตวแปรท ตอไปนแสดงใหเหนวาสตวและพนธพชทน ำาเขาชดขอมล:

โปรแกรมตอไปนใช SET 2 set ทจะรวมการสงเกตจากพชและสตว, และพมพผล:

40

การสงเกตในชดขอมลใหมแตละคนมตวแปรทงหมดจากชดขอมล แตโปรดทราบวาคาตวแปรทใชรวมกนในการสงเกตม 6 "กรม." มลคาของทวไปใน 6 การสงเกตของสตวชดขอมลทถกแทนทดวยคาในตวอาคารซงเปนชดขอมลท SAS อานลาสด

ความคดเหนและการเปรยบเทยบ

ผลทจะไดรบโดยการอานการสงเกตโดยใชสองคนหรอมากกวา SET มความคลายคลงกบผทจะไดรบโดยใชงบรวมกบคำาสงไมได แตดวยการอานแบบหนงตอหนง SAS หยดการประมวลผลกอนทจะสงเกตคาทงหมดจะถกอานจากขอมลทงหมดถาจำานวนของการสงเกตในชดขอมลไมเทากบ ใช SET หลาย SET กบขอมลอน ๆ ขนตอนททำาใหการใชงานเปนไปไดดงตอไปน:

การควบรวมกจการหนงสงเกตกบหลาย ๆคาสงเกต

41

สงเกตตามเงอนไขการรวม

อานจากขอมลทเหมอนกนตงสองครง

การรวมกนแบบหนงตอหนง (One-to-One Merging )

คำานยาม

One-to-One การรวมกนของขอสงเกตจากสองหรอมากกวาขอมล SAS ชดเดยวในการสงเกตชดขอมลใหม เพอดำาเนนการอยางใดอยางหนงตอหนง รวมโดยไมจำาแนกเปน SAS รวมครงแรกทคาสงเกตจากชดขอมลทงหมดในงบรวมเปนครงแรกทสงเกตในชดขอมลใหมทสองจากการสงเกตขอมลทงหมดทกำาหนดไวในขอสงเกตทสองในชดขอมลใหม

42

และอน ๆ ในการรวมแบบหนงตอหนงจ ำานวนคาสงเกตในชดขอมลใหมเทากบจำานวนของการสงเกตในชดขอมลทใหญทสดทมชออยในงบรวม

ถาคณใช MERGENOBY = ตวเลอกระบบ SAS คณสามารถควบคมวาปญหา ขอความเมอผสานการประมวลผลทเกดขนโดยไมตองมค ำาสงทเกยวของ

รปแบบ

ใชรปแบบของ MERGE นรวมชดขอมล SAS:

ผสานขอมลชด (s)

Where

ขอมลการตงคา

มชออยางนอยสองทมอยบนชดขอมล SAS

ขอควรระวง :

หลกเลยงการใชคาทซำากนหรอคาทแตกตางกนของตวแปรทพบบอย การรวมกยแบบ One-to-One กบชดขอมลทมคาทซ ำากนของตวแปรทรวมกนสามารถใหผลลพธทไมพงปรารถนา ถาตวแปรทมอยในหนงชดขอมลมากกวาคาจากขอมลชดสดทายทจะอานเปนทถกเขยนไปยงดาตาเซตใหม ตวแปรทจะรวมกนตรงตามทพวกเขาจะอานจากแตละชดขอมล การใชแบบหนงตอหนงผสานรวมชดขอมลทมคาทแตกตางกนของตวแปรทวไปยงสามารถกอใหเกดผลทไมพงประสงค ถาตวแปรทมอยมากกวาหนงชดขอมลคาจากขอมลลาสดของชดอานเปนหนงทถกเขยนไปยงขอมลใหมทกำาหนดไวแมวาคาทขาดหายไป เมอ SAS ไดประมวลผลการสงเกตการณ

43

ทงหมดในชดขอมลทงหมดขอสงเกตทตามมาในชดขอมลใหมมคาทหายไปสำาหรบตวแปรทเปนเอกลกษณของขอมลชดนน [cautionend]

สำาหรบคำาอธบายทสมบรณของงบรวมดอางอง SAS ภาษา: พจนานกรม

ขนตอนการประมวลผลขอมลในชวง การรวมกนแบบ One-to-One

ขนตอนการรวบรวม

SAS อานขอมลบงชของแตละชดขอมลทมช ออยในงบรวมแลวสรางโปรแกรมเวกเตอรขอมลทมตวแปรทงหมดจากชดขอมลทงหมดเชนเดยวกบตวแปรทสรางขนโดยขนตอนขอมล

การดำาเนนการ - ขนท 1

SAS อานคร งแรกทสงเกตจากขอมลแตละชดเปนโปรแกรมเวกเตอร ขอมลการอานชดขอมลในลำาดบทพวกเขาปรากฏในงบรวม ถาสองชดขอมลทมตวแปรเดยวกนคาจากขอมลทสองทก ำาหนดใหแทนทคาจากขอมลชดแรก หลงจากทไดอานครงแรกทสงเกตจากชดขอมลทผานมาและการดำาเนนการงบอน ๆ ในขนตอนขอมลท SAS เขยนเนอหาของขอมลเวกเตอรโปรแกรมดาตาเซตใหม เฉพาะตวแปรเหลานนทจะสรางหรอกำาหนดคาระหวางการขนตอนทขอมลจะถกกำาหนดใหหายไป

การดำาเนนการ - ขนท 2

SAS จะดำาเนนการตอไปจนกวาจะไดอานขอสงเกตทงหมดจากชดขอมล

44

ตวอยางท 1: การรวมกนแบบ One-to-One กบจำานวนทเทาเทยมกนของการสงเกต

ขอมล SAS ชดพชและสตวทงสองมรวมกนตวแปรสงเกตและมการจดเรยงตามคาของทใชรวมกน ตอไปนแสดงใหเหนวาสตวและพนธพชทน ำาเขาชดขอมล:

โปรแกรมตอไปนรวมชดขอมลเหลานและพมพผล:

45

การสงเกตในชดขอมลใหมแตละชดมตวแปรทงหมดจากชดขอมล ถาสองชดขอมลทมตวแปรเดยวกนคาจากขอมลทสองทกำาหนดใหแทนทคาจากขอมลชดแรกทแสดงในตางสงเกตท 6

ตวอยางท 2: การรวมกนแบบ One-to-One กบจำานวนไมเทากนจากการสงเกตการณ

ขอมล SAS ชดท 1 และสตว PLANT1 ทงสองมตวแปรทใชรวมกนและการสงเกตการจดเรยงตามคาของทใชรวมกน PLANT1 ชดขอมลทมการสงเกตนอยกวาสตว 1 ชดขอมล ตอไปนแสดงใหเหน ANIMAL1 และชด PLANT1 ปอนขอมล:

46

โปรดทราบวาขอสงเกตท 4 ถง 6 มคาทหายไปสำาหรบตวแปรพช

ตวอยางท 3: การรวมกนแบบ One-to-One ดวยซำาคาของตวแปรทใชรวมกน

ตวอยางตอไปนแสดงใหเหนถงผลทไมพงประสงคทคณสามารถไดรบโดยใชหนงตอหนงรวมกบชดขอมลทมคาทซ ำากนของตวแปรทพบบอย

47

คาจากขอมลชดสดทายทจะอานเปนหนงทถกเขยนไปยงชดขอมลใหม ตวแปรทจะรวมกนตรงตามทพวกเขาจะอานจากแตละชดขอมล ในตวอยางตอไปนชดขอมล ANIMAL1 และ PLANT1 มตวแปรทใชรวมกนและแตละชดขอมลทมขอสงเกตทมคาทซ ำากนของสามญ ตอไปนแสดงใหเหน ANIMAL1 และชด PLANT1 ปอนขอมล:

จำานวนของการสงเกตในขอมลชดใหม 6 โปรดทราบวาคาสงเกตท 2 และ 3 มคาทไมพงประสงค SAS อานสงเกตทสองจากชดขอมล ANIMAL1 จากนนกอานสงเกตทสองจากขอมลชด PLANT1 และแทนทคาสำาหรบตวแปรทวไปและ Plant1 สงเกตทสามถกสรางขนในลกษณะเดยวกน

48

ตวอยางท 4: การรวมกนแบบ One-to-One กบคาทแตกตางของตวแปรทใชรวมกน

ตวอยางตอไปนแสดงใหเหนถงผลทไมพงประสงคทไดรบจากการใชแบบหนงตอหนงผสานรวมชดขอมลทมคาทแตกตางกนของตวแปรทพบบอย ถาตวแปรทมอยในมากกวาหนงชดขอมลคาจากขอมลชดสดทายทจะอานเปนหนงทถกเขยนไปยงดาตาเซตใหมแมวาคาทขาดหายไป เมอ SAS ประมวลกระบวนการทงหมด observations ในชดขอมลทงหมดทเปนขอสงเกตทตามมาในชดขอมลใหมมค าทหายไปส ำาหรบตวแปรทเป นเอกลกษณของขอมลชดนน ในตวอยางนชดขอมล ANIMAL2 และ PLANT2 มคาทแตกตางกนของตวแปรทใชรวมกน ตอไปนแสดงใหเหน ANIMAL2 และชดปอนขอมล PLANT2:

49

ความคดเหนและการเปรยบเทยบ

ผลทไดจากการรวมแบบหนงตอหนงมความคลายคลงกบผลทไดรบจากการใชสองหรอมากกวา SET จะรวมการสงเกต อยางไรกตามดวยการรวมแบบแบบหนงตอหนง SAS ยงคงประมวลผลการสงเกตการณในทกชดขอมลทมชออยในขอมลรวม

Match-Merging

คำานยาม

MATCH-Merging เปนการรวมขอสงเกตจากสองหรอมากกวาในชดขอมล SAS ในการสงเกตเดยวในขอมลใหมตงตามคาของตวแปรทพบบอย จำานวนของการสงเกตในขอมลชดใหมคอผลรวมของจำานวนทใหญ

50

ทสดของการสงเกตในแตละกลมในทกชดขอมล ทจะดำาเนนการจบคผสานการใชคำาสงผสานกบคำาสง กอนทคณจะสามารถดำาเนนการจบคผสานทงชดขอมลจะตองถกจดเรยงตามตวแปรทคณระบในคำาสงหรอพวกเขาจะตองมดชน

รปแบบ

ใชรปแบบของ MERGE นเพอใหตรงกบจดหมายเวยนชดขอมล:

ผสานขอมลชด (s);

จำาแนกเปนตวแปร (s);

Where

ขอมลการตงคา

อยางนอยสองชอทมอย SAS ชดขอมลจากการสงเกตการณทจะอาน

ตวแปร

ชอตวแปรแตละตวโดยทชดขอมลจะถกจดเรยงหรอการจดทำาดชน

สำาหรบคำาอธบายทสมบรณของการผสานและจำาแนกดทอางองภาษา SAS : พจนานกรม

ขนตอน การรวบรวม

SAS อานขอมล บงชของแตละชด ขอมลท มชออยในงบรวมแลว สรางโปรแกรมเวกเตอร ขอมลทม ตวแปรทงหมดจากชด ขอมลทงหมด เชนเ ด ย ว ก บ ต ว แ ป ร ท ส ร า ง ข น โ ด ย ข น ต อ น ข อ ม ล SAS

51

สราง FIRST.variable และ LAST.variable สำาหรบตวแปร ทระบไวในแตละคำาสง

การดำาเนนการ - ขนท 1

SAS มลกษณะทเปนครงแรกโดยกลมในแตละชดขอมลทมชออยในการผสาร ทจะกำาหนดโดยกลม ควรจะปรากฏขนเปนครงแรกในชดขอมลใหม ขนตอนในการอานขอมลเวกเตอร ขอมลโปรแกรม ครงแรกทสงเกต ในการทจะจำาแนกเปนกลม จากแตละชด ขอมล การอานชดขอมลในลำาดบทพวกเขา ปรากฏในการผสาน ถาชดขอมลทไมไดมขอสงเกตในการทจะจำาแนกเปน กลมโปรแกรมเวกเตอรขอมลมคาท หายไป สำาหรบตวแปรทไมซำากบ ขอมลชดนน

การดำาเนนการ - ขนท 2

หลงจากการประมวลผล ครงแรกทสงเกตจากชดขอมลทผานมาและ การดำาเนนการ อน ๆ SAS เขยน เนอหาของโปรแกรมเวกเตอรขอมลไปยงชด ขอมลใหม SAS ยงคงรกษาคาของตวแปรทงหมดในเวกเตอร ขอมลโปรแกรมยกเวนตวแปรทถกสรางขนโดยขนตอน ขอมล SAS ตงคาเหลานน จะหายไป SAS ยงคง ทจะผสานการสงเกตจนกวาจะเขยน ขอสงเกตทงหมดจากคร งแรกโดย กลมไปยงชด ขอมลใหม เมอ SAS ได อาน ทงหมด observations ในกลมจากชดขอมลทจะกำาหนด ตวแปรทงหมดในเวกเตอร ขอมลโปรแกรมจะ หายไป SAS มลกษณะทกลม ในขอมล แตละชดจะกำาหนด โดยกลมควรจะปรากฏตอไปในดาตาเซตใหม

การดำาเนนการ - ขนท 3

SAS จะทำาซำาขนตอนเหลานจนกวาจะอานขอสงเกตทงหมดจากกลมในทกชดขอมล

52

ตวอยางท 1: รวมขอสงเกตตามเกณฑ

ขอมล SAS ชดพชและสตวแตละมการจำาแนกเปนตวแปรธรรมดาและขอสงเกตทมการจดเรยงตามลำาดบจากคาของตวแปรจำาแนกเปน ตอไปนแสดงใหเหนวาสตวและพนธพชทนำาเขาชดขอมล:

53

การสงเกตในชดขอมลใหมจะประกอบดวยตวแปรทงหมดจากชดขอมล

ตวอยางท 2: จบคผสานดวยคาซำาของตวแปรจำาแนก

เมอ SAS อานลาสดจากการสงเกตโดยกลมหนงในชดขอมล SAS ยงคงมค าในเวกเตอรขอมลโปรแกรมส ำาหรบตวแปรทงหมดทเป นเอกลกษณของขอมลชดนนจนกระทงสงเกตทงหมดทจำาแนกเปนกลมได

54

รบจากการอานขอมลทงหมดชดในตวอยางตอไปนชดขอมล ANIMAL1 และ PLANT1 มคาทซ ำากนจากจำาแนกตามตวแปรทใชรวมกน ตอไปนแสดงใหเหน ANIMAL1 และชด PLANT1 ปอนขอมล:

2 ขอสงเกตของการสงออกทมลคาของ Plant1 ตวแปรจะถกเกบไวจนกวาจะสงเกตทงหมดในกลมถกเขยนไปยงดาตาเซตใหม ตรงกบการควบรวมกจการยงผลตคาทซำากนใน ANIMAL1 4 และ 5

ตวอยางท 3: MATCH-Merge กบขอสงเกต Nonmatched

55

เมอ SAS ดำาเนนการแขงขนรวมกบการสงเกต nonmatched ในชดขอมลเขา SAS ยงคงรกษาคาของตวแปรทงหมดในเวกเตอรขอมลโปรแกรมแมวาคาทขาดหายไป ขอมลชด ANIMAL2 PLANT2 และไมไดมค าทงหมดของจำาแนกตามตวแปรทใชรวมกน ตอไปนแสดงใหเหน ANIMAL2 และชดปอนขอมล PLANT2:

ในฐานะทเปนเอาทพทจะแสดงใหเหนถงคาทงหมดของตวแปรทใชรวมกนและจะแสดงในชดขอมลใหมรวมทงคาขาดหายไปสำาหรบตวแปรทอยในหนงชดขอมล แตไมไดอยในทอน ๆ

56

Updating with the UPDATE and the MODIFY Statements การปรบปรงและปรบเปลยนคำาสง

คำาจำากดความ

การอปเดตขอม ลชด หมายถ งกระบวนการของการใช การเปลยนแปลงขอมลหลก ตง การปรบปรงชดขอมล ทคณทำางานกบ ขอมลสองชดขอมลชดขอมลทมขอมลเดมเปนหลกชดขอมลและ ชดขอมลทมขอมลใหม คอขอมลการทำาธรกรรม

คณสามารถปรบปร ง ช ด ขอมลโดยใช ค ำาส ง UPDATE หรอค ำาส ง MODIFY ปรบเปลยน :

UPDATE ใช การสงเกต จากขอมลการทำาธรกรรมการตงคาการ เปลยนคาของการสงเกตทสอดคลองกนจากชดขอมลหลก คณตองใชค ำาสงทม คำาสง UPDATE เพราะสงเกตทงหมด ในการทำาธรกรรมชดขอมลท คยไป สงเกตในขอมลหลก ตงตามคาของตวแปรจำาแนก 

MODIFY สามารถแทนทลบและ ผนวก การสงเกตในขอมลทมอยตงใชคำาสง ปรบเปลยนสามารถประหยดเนอทดสก เพราะมนแกไขขอมลในสถานท โดยไมตองสรางสำาเนาของชดขอมล

จำานวนของการสงเกตในชดขอมลใหม คอผลรวมของตวเลขของการสงเกตในขอมลชดหลก และจำานวนของการสงเกตทเปรยบในการตงคาขอมลการทำาธรกรรม

สำาหรบ ขอมลทสมบรณ เกยวกบการปรบปรง และงบ แกไข, ด อางอง SAS ภาษา: พจนานกรม

57

ไวยากรณของคำาสง UPDATE

ใชรปแบบของคำาสง UPDATE นเพอปรบปรงหลกชดของขอมล:

UPDATE-master ชดขอมลธรกรรมขอมลชด;

จำาแนกเปนตวแปรรายการ;

Where

ขอมลชดหลก

ชอชดขอมล SAS ทใชเปนหลกของแฟม

การทำาธรกรรมขอมลชด

ชอชดขอมล SAS ทมการเปลยนแปลงทจะนำาไปใชกบขอมลหลก

ตวแปรรายการ

ระบตวแปรทสงเกตมการจบค

ถาธรกรรมชดขอมลทมคาทซ ำากนจากจำาแนกตามตวแปร SAS ใชการทำาธรกรรมทงการสงเกตคาสดทายทจะถกคดลอกลงในโปรแกรมเวกเตอรขอมลถกเขยนไปยงชดขอมลใหม หากขอมลของคณในรปแบบนใชคำาสงปรบเปลยนแทนคำาสง UPDATE ในการประมวลผลขอมลของคณ

ขอควรระวง :

คาของตวแปรตองไมซ ำากนสำาหรบการสงเกตในแตละหลกของชดขอมล ถาขอมลชดหลกมขอสงเกตสองขอทมคาเดยวกนของจำาแนกตาม

58

ตวแปรครงแรกทสงเกตจะมการปรบปรงและการสงเกตทสองจะถกละเวน SAS จะเขยนขอความเตอนไปยงลอกเมอขนตอนการดำาเนนการขอมล [cautionend]สำาหรบขอมลทสมบรณเกยวกบคำาสง UPDATE ใหดอางอง SAS ภาษา: พจนานกรม

ไวยากรณของคำาชแจง ปรบเปลยน

รปแบบของการปรบเปลยนคำาสงนจะถกใชในตวอยางทเปนไปตาม:

ปรบเปลยน-ชดขอมลหลก;

จำาแนกเปนตวแปรรายการ;

where

ขอมลชดหลก

ระบชดขอมล SAS ทคณตองการทจะปรบเปลยน

ตวแปรรายการ

ชอตวแปรโดยทขอมลทกำาหนดเปนแตละคำาสง

หมายเหต: คำาสงปรบเปลยนไมสนบสนนการเปลยนแปลงสวนอธบายของชดขอมล SAS เชนการเพมตวแปร [cautionend]

สำาหรบขอมลทสมบรณเกยวกบคำาสงปรบเปลยนใหดอางอง SAS ภาษา: พจนานกรม

59

ขนตอน การประมวลผล ขอมล ดวย คำาสง UPDATE

ขนตอน การรวบรวม

SAS อ า นข อ ม ล บ ง ช ข อ ง แ ต ล ะ ช ด ข อ ม ล ท ม ช อ อ ย ใ น ค ำา ส ง UPDATE และสรางโปรแกรม เวกเตอร ขอมลทม ตวแปรทงหมดจากขอมลทงหมดทกำาหนด เชนเดยวกบตวแปรทสรางขนโดยขนตอนขอมล

SAS สราง FIRST.variable และ LAST.variable สำาหรบตวแปร ทระบไวในคำาสง แตละ

การดำาเนนการ - ขนท 1

SAS มลกษณะทสงเกตแรกใน แตละชดขอมลทมชออยใน คำาสง UPDATE ทจะกำาหนดโดยกลมควรจะปรากฏขนเปนครงแรก หากการทำารายการตามมลคานำาหลก ดวยคา SAS อานจากขอมลการทำาธรกรรม ทกำาหนดเทานนและ กำาหนดตวแปรจากขอมลหลกชดทจะหายไป ถา โดยคาทนำาไป ทำาธรกรรม ดวยคา SAS อานจากขอมลหลกทกำาหนด เทานนและกำาหนด ตวแปรทไมซำากนจากขอมลการทำาธรกรรม การตงคา ทหายไปถาจำาแนกตามคาในหลกและชด ขอมลการทำาธรกรรมมคาเทากนจะใชการทำาธรกรรมครงแรก โดยการคดลอก คา nonmissing เปนเวกเตอร ขอมลโปรแกรม

การดำาเนนการ - ขนท 2

หลงจากทเสรจสนการทำาธรกรรม คร งแรกท SAS มลกษณะทสงเกตตอไปในการทำาธรกรรมชดขอมล ถา SAS พบกบหนงเดยวกนโดย

60

มลคาจะใชการทำาธรกรรมทเกนไปครงแรกทสงเกต แลวมคาใหมจากการทำาธรกรรมทงสองถาไมมการทำาธรกรรม อน ๆ ทมอยสำาหรบการสงเกตท SAS เขยน สงเกตถงชดขอมลใหม และการตงคาในเวกเตอร ขอมลโปรแกรมจะหายไป SAS ซำาขนตอนเหลาน จนกวาจะไดอานขอสงเกต ทงหมดจากกลมทงในชดขอมล

การปรบปรง ท ม ขอสงเกต Nonmatched ค าน ยม ท หายไป และ ตวแปร ใหม

ใน คำาสง UPDATE ถา สงเกตในหลกชดขอมลทไมไดมการสงเกตทสอดคลองกนใน การทำาธรกรรมชด ขอมล SAS เขยน สงเกตกบขอมลชดใหมโดยไมตองแกไขมนการสงเกต ใด ๆ จากการทำาธรกรรมชด ขอมลทไมสอดคลองกบการสงเกตในชด ขอมลหลกถกเขยนไปยงโปรแกรมเวกเตอรและกลายเปน ขอมล พนฐานสำาหรบการสงเกตในขอมลชดใหมขอมลในโปรแกรมเวกเตอร ขอมลทสามารถแกไขไดโดย การทำาธรกรรม อน ๆ กอนทมนจะ ถกเขยนไปยงชดขอมลใหม สงเกตชดขอมลไมจ ำาเปนตองมการปรบปรงการสงเกตทสอดคลองกน สามารถละเวนจากขอมลการท ำาธรกรรม

SAS ไมไดแทนทคาทมอยในขอมล คาทหายไปถาคาเหลานนจะกำาหนดเปน ระยะเวลา ( สำาหรบตวแปร ตวเลข) หรอ ชองวาง ( สำาหรบตวแปร ตวอกษร ) ในขอมลการทำาธรกรรมเพอแทนทคาทมอย ดวยคาทขาดหายไปคณตองสราง ขอมลการทำาธรกรรมซงตงอยใน คาทขาดหายถกเขยนดวยอกขระพเศษ ทหายไป มลคา หรอใชUpdateMode = ตวเลอก คำา NOMISSINGCHECK

61

ดวยการปรบปรง ,การทำาธรกรรมชดขอมล สามารถมตวแปรใหมทจะ เพมเขามาในการสงเกตทงหมด ในชดขอมลหลก

หากต องการด ต วอย าง โปรแกรม , ดจาก Example 3: Using UPDATE for Processing Nonmatched Observations, Missing Values, and New Variables.

ความตองการสำาหรบการจดเรยง คำาสง UPDATE

หากคณไมได ใชดชนทงสองหลกชดขอมลและการทำาธรกรรม ชดขอมลจะตองถกจดเรยงตาม ตวแปร เดยวกนหรอตวแปรทคณระบในคำาสงทมาพรอมกบ คำาสง UPDATE คาของตวแปรจำาแนกควรจะไมซ ำากนสำาหรบการสงเกตในชดขอมลหลกแตละชด ถาคณใชมากกวาหนงตวแปร จำาแนกการรวมกนของคา โดย ตวแปร ทควรจะไมซ ำากนสำาหรบการสงเกต ในแตละหลกของชดขอมล จำาแนกเปนตวแปรหรอตวแปร ควรจะเปนสงทไมจำาเปนตองปรบปรง

หมายเหต:คำาสงปรบเปลยนไมตองใชไฟลเรยงตามอยางไรกตามการเรยงลำาดบขอมลปรบปรงประสทธภาพ [ cautionend ]

การใช ดชนทมคำาชแจง MODIFY

MODIFY รกษาดชน ไมจำาเปนตองสรางดชน เชนเดยวกบ คำาสง UPDATEการเลอกระหวาง การปรบปรง หรอแกไข

62

การใช คำาสง UPDATE กเปรยบได กบการใช MODIFY ดวย โดยจะนำาไปใชทำาธรกรรม กบขอมลการตงคา ในขณะทการปรบเปลยน เปนเครองมอท มประสทธภาพมากขนกบการใชงานอน ๆ อกหลาย UPDATE ยงคงเปนเครองมอทางเลอกในบางกรณตารางตอไปน จะชวยใหคณเลอกวาจะใชการปรบปรงหรอแกไข ดวยการจำาแนก

MODIFY with BY versus UPDATE Issue MODIFY with BY UPDATEDisk space(พ น ท ว า ง ใ นดสก)

ช วยประหยด เน อ ท ด สก เพราะการปรบปรงขอมลในพนท

ตองใชพนทดสกมากขนเพราะมนผลตสำาเนาทปรบปรงจากชดขอมล

Sort and index(ก า รเ ร ย งลำาดบและดชน)

ไมจำาเปนตองเรยงขอมลถงแมวาการดำาเนนงานทดกขอแนะนำาวาทงสองชดขอมลทถกจดเรยงและท หล กชดขอมลทจะจดทำาดชน

ต อ ง ก า ร เ พ ย ง ท ง ส อ ง ช ดขอมลถกจดเรยง

When to use(เมอใช)

ใชเฉพาะเมอคณคาดหวงทจะด ำา เน นการสวนเล ก ๆ ของชดขอมล

ใชถ าคณคาดหวงท จ ะต องดำาเน นการมากทสดของชดขอมล

Where to specify the modified data set

ระบการปรบปรงขอมลทตงอยในทงขอมลและคำาสงทปรบเปลยน

ระบชดขอมลในการปรบปรงขอมลและคำาสง UPDATE

63

(ทระบชดข อ ม ลแกไข)Duplicate BY-values(ค า ต วแปรทซ ำากน)

ชวยใหคาทซ ำากนทงในหลกและขอมลการทำาธรกรรมชด

ชวยใหคาทซ ำากนในขอมลการทำาธรกรรมการตงคาเฉพาะ (ถ าซำากนทมอยในชดขอมลหลก SAS เตอน.)

Scope of changes(ขอบเขตของการเปล ยนแปลง)

ไมสามารถเปล ยนแปลงขอมลขอม ลบงช ดด งน นการเปลยนแปลงเชนการเพ มหร อลบต วแปรป ายตวแปรจะไมถกตอง

สามารถทำาการเปลยนแปลงทจำาเปนตองมการเปลยนแปลงในสวนอธบายของชดขอมลเชนการเพมตวแปรใหมและอน ๆ

Error checking(ก า รต ร ว จส อ บ ข อผ ดพลาด)

มความสามารถในการตรวจสอบขอผ ดพลาดโดยใช _IORC_ ตวแปรอตโนมตแ ล ะ SYSRC Autocall แมโคร Und

ความตองการในการตรวจสอบขอผดพลาดเพราะการทำาธรกรรมโดยไมตองบนทกหลกทสอดคลองกนจะไมใช แตจะมการเพมการตงคาไมมขอมล

Data set integrity(ค ว า มส ม บ ร ณ

ขอมลอาจมการปรบปร งบางสวนเนองจากการเลกจางงานทผดปกต

การสญเสยขอมลไมเกดข นเนองจาก UPDATE ทำางานบนสำาเนาของขอมล

64

ข อ ง ช ดขอมล)

For more information about tools for combining SAS data sets, see Statements or Procedures for Combining SAS Data Sets.

ความตองการในการตรวจสอบขอผดพลาดเพราะการทำาธรกรรมโดยไมตองบนทกหลกทสอดคลองกนจะไมใช แตจะมการเพมการตงคาไมมขอมลขอมลอาจมการปรบปรงบางสวนเนองจากการเลกจางงานทผดปกตการสญเสยขอมลไมเกดขนเนองจาก UPDATE ทำางานบนสำาเนาของขอมล

ตวอยางท 1: การใชการปรบปรงสำาหรบพนฐานบรอดแบนด

ในตวอยางน MASTER ชดขอมลทมคาเดมของตวแปรสตวและพนธพช NEWPLANT ชดขอมลทมขอมลการทำาธรกรรมการตงคาดวยคาใหมของโรงตวแปร ตอไปนแสดงใหเหนถงตนแบบและชดปอนขอมล NEWPLANT:

65

การสงเกตในชดขอมลใหมมคาใหมสำาหรบพชตวแปร

ตวอยางท 2: การใช UPDATE ดวยคาซำาของตวแปร

ถาขอมลชดหลกมขอสงเกตสองขอทมคาเดยวกนของจำาแนกตามตวแปรครงแรกทสงเกตจะมการปรบปรงและการสงเกตทสองจะถกละเวน SAS เขยนขอความเตอนไปยงลอก ถาธรกรรมชดขอมลทมคาทซ ำากนจากจำาแนกตามตวแปร SAS ใชการทำาธรกรรมทงการสงเกตคาทคดลอกลงใน

66

โปรแกรมเวกเตอรขอมลถกเขยนไปยงชดขอมลใหม ตอไปนแสดงใหเหน MASTER1 และปอนขอมล DUPPLANT

เมอขนตอนนรนขอมล, SAS สรางขอความแจงเตอนทระบวามมากกวาหนงสงเกตโดยกลม อยางไรกตามขนตอนขอมลอยางตอเนองเพอประมวลผลและขอมลชด UPDATE1 จะถกสรางขน

ชดขอมลผลการศกษามเจดขอสงเกต 2 และ 3 คาสงเกต มคาทซำากนจากจำาแนกตามตวแปรทใชรวมกน แตคาของตวแปร PLANT1 ไมไดถกปรบปรงเกดขนสองทของทซำากน

67

ต ว อ ย า ง ท 3: UPDATE ใ ช ส ำา ห ร บ ก า ร ป ร ะ ม ว ล ผ ล ข อ ส ง เ ก ต Nonmatched, คาทหายไปและตวแปรใหม

ในตวอยางนชดขอมล MASTER2 เปนขอมลหลกตง มนไมไดมคาทหายไปสำาหรบ Plant2 ตวแปรในครงแรกทสงเกตและไมทงหมดของคาของตวแปรโดยทวไปจะรวมการทำาธรกรรม NONPLANT ชดขอมลทมตวแปรใหมคาใหมของตวแปรโดยทวไปและคานยมทหายไปสำาหรบขอสงเกตทหลาย ตอไปน แสดงใหเหน MASTER2 และชดป อนขอมล NONPLANT:

ดงทแสดงการสงเกตทงหมดตอนนมคาสำาหรบตวแปรแร มลคาของแรมการตงคาทหายไปสำาหรบขอสงเกตบาง 2 สงเกตและ 6 ใน

68

รายการชดขอมลทไมไดมขอสงเกตทสอดคลองกนใน MASTER2 และพวกเขาไดกลายเปนขอสงเกตใหม สงเกตจาก 3 หลกชดขอมลถกเขยนไปยงดาตาเซตใหมโดยไมมการเปลยนแปลงและความคมคาสำาหรบ Plant2 ในการสงเกต 4 กไมไดเปลยนไปหายไป สามขอสงเกตในชดขอมลใหมมการปรบปรงคาสำาหรบตวแปร Plant2

มลคาของ Plant2 ใน 5 ขอสงเกตการตงค าท หายไปเพราะ UpdateMode = ต ว เล อ ก NOMISSINGCHECK มผ ล ใช บ ง ค บ สำาหรบตวอยางทมรายละเอยดสำาหรบการปรบปรงชดขอมลดการรวมและการปรบเปลยนชดขอมล SAS: ตวอยาง

69

ตวอยาง 4: การปรบปรงขอมลหลกตงโดยการเพมการสงเกต

ถาธรกรรมชดขอมลทมการสงเกตทไมตรงกบการสงเกตในขอมลชดตนแบบทคณตองปรบเปลยนโปรแกรม มลคาปใน 5 ขอสงเกตของการทำาธรกรรมสามารถจบคไดใน MASTER ไมม ตอไปนแสดงใหเหน MASTER และรายการทเกยวโยงปอนชดขอมล:

คณตองใชคำาสงเอาทพททชดเจนทจะเขยนใหมเพอสงเกตหลกชดขอมล (ดำาเนนการเรมตนสำาหรบขอมลทเปนขนตอนทใชคำาสงปรบเปลยนคอเปลยนไมไดเอาทพท) เมอคณระบงบผลผลตทชดเจนคณจะตองระบคำาสงแทนทขนตอนการปรบปรงขอมลตอไปน MASTER ชดขอมลขนอยกบคาในการทำาธรกรรมและเพมการสงเกตใหม โปรแกรมนยงใชตวแปร

70

อตโนมต _IORC_ สำาหรบขอผดพลาดการตรวจสอบ (สำาหรบขอมลเพมเตมเก ยวกบการตรวจสอบขอผดพลาดดได จาก Error Checking When Using Indexes to Randomly Access or Update Data.

Error Checking When Using Indexes to Randomly Access or Update Data

การตรวจสอบขอผดพลาดเมอใชดชนเพอเขาสมหรอการปรบปรงขอมล

ความสำาคญของการตรวจสอบขอผดพลาด

เมออานขอสงเกตกบตงคาคำาสงและตวเลอกสำาคญหรอมคำาสงแกไข การตรวจสอบขอผดพลาดทมความจ ำาเปนดวยเหตผลหลายประการ เหตผลทสำาคญทสดคอเครองมอเหลานใชวธการเขาถงไมตอเนองและเพอใหมการรบประกนวาการสงเกตจะอยทตรงตามคำาขอ การตรวจสอบขอผดพลาดคณสามารถดำาเนนการโดยตรงจากรหสเฉพาะ ผลของการดำาเนนการขนอยกบ I / O โปรแกรมของคณจะดำาเนนตอไปสำาหรบเงอนไขทคาดหวงและยตการดำาเนนการเมอผลทไมคาดคดเกดขน

เครองมอของการตรวจสอบขอผดพลาด

71

เครองมอทงสองไดถกสรางขนเพอใหการตรวจสอบขอผดพลาดงายขนเมอคณใชคำาสง MODIFY หรอคำาสง SET ซงเปนตวเลอกสำาคญในการประมวลผลขอมล SAS

_IORC_ ตวแปรอตโนมต SYSRC เรยกคำาสงอตโนมต คำาสงทประกอบดวยคำาสงยอย

_IORC_ ถกสรางขนโดยอตโนมต เมอคณใชคำาสง MODIFY หรอคำาสง SET ซงเปนตวเลอกสำาคญ

กลบเปนรหสตวเลขทบงชวาสถานะของการดำาเนนการ I / O จากดำาเนนการเรวทสดนใชค ำาส ง MODIFY หรอ SET ตรวจสอบคาของตวแปรน จะชวยใหคณสามารถตรวจสอบเงอนไข I / O ทผดปกต และดำาเนนการลงรหสเฉพาะแทนทจะมการประยกตใชอยางผดปกต จากตวอยาง ถาคากรอกตวแปรไมตรงกบขอสงเกตสมมตฐานสองสมมตฐาน อาจจะตองรวมเอาทพททตงสมมตฐาน หากสมมตฐานไมตรงกน อาจเพยงเขยนบนท กลงในแฟมบนท ก เพราะค าของตวแปรอตโนมต _IORC_ ทนำาเขาและอาจมการเปลยนแปลง SYSRC แมโครถกสรางขนเพอชวยใหคณสามารถทดสอบเงอนไข I / O โดยเฉพาะในขณะทปกปองรหสของคณจากการเปลยนแปลงในอนาคตคา _IORC_ เม อคณใช SYSRC คณสามารถตรวจสอบคาของ _IORC_ โดยระบ Mnemonic ไวในตารางตอไปน

ทพบมากทสดของคา Mnemonic _IORC_ สำาหรบการประมวลผลขน DATAMnemonic value จำา

Meaning of return code

When return code occurs

72

_DSENMRตงคาขอมลทเปนรายการเ ป ล ย น แ ป ล ง ต ง ข อสงเกตชดขอมลทไมอยในขอมลหลก

เล อกใช MODIFY และไมมการซำากนเกดขน

_DSEMTR ข อ ม ล Multiple TRANSACTION ข อสงเกตเดยวกนโดยคาตวแปรทไมอย ในชดขอมล MASTER

เปลยนแปลงตามการใช และขอสงเกตเดยวกนโดยในขอมลแรกทกำาหนด ไมพ บ ค า ท เ ข า ค ก น ใ นสถานการณเชนนครงแรกทสงเกตวาล มเหลวทจะพ บ ก า ร เ ข า ค ก น ก ล บ _DSENMR ขอสงเกตทตามมากลบ _DSEMTR

_DSENOM ไมมการจบคการสงเกตถกพบใน MASTER ชดขอมล

ตงคาหรอเปลยนแปลงคำาสง ไมมการซำากน

_SENOCHN การด ำา เน นการสงออกประสบความสำาเรจ

เลอกคำาสง MODIFY ในการปรบเปลยนคำาสงทมคาทซำากน

_SOK การด ำาเน นการ I / O ก ประสบความสำาเรจ

คนพบการเขาคกน

ตวอยางท 1: เสนทางการประมวลผลเมอสภาพทไมคาดคดเกดขน

ภาพรวม

73

ตวอยางนแสดงใหเหนถงวธการปองกนสภาพทไมคาดคดจากการยกเลกขนตอนขอมล เปาหมายคอการปรบปรงชดขอมล ดวยขอมลใหมจากการ transaction ชดขอมล โปรแกรมนอนมานวามคาทซ ำากนไมมตวแปรรวมกนในขอมลทงชด

หมายเหต: โปรแกรมนจะทำางานไดตามทคาดไวเฉพาะในกรณทหลกและชดขอมลทมขอสงเกตทตดตอกนทมคาเดยวกนส ำาหรบตวแปรทพบบอย สำาหรบคำาอธบายจากพฤตกรรมของการปรบเปลยน เมอดค ำาสงปรบเปลยนใน SAS ภาษาอางอง: พจนานกรม

นำาเขาชดขอมล

รายการชดขอมลทมสามขอสงเกต สองการปรบปรงขอมลใน MASTER และสงเกตใหมเกยวกบคาหมายเลข 6 ชนสวน ทตองการทจะเพมเขามา MASTER การจดทำาดชนเมอหมายเลขชนสวน ไมมคาทซ ำากนจากหมายเลขชนสวนใน MASTER หรอรายการไว ตอไปนแสดงใหเหน MASTER และรายการทเกยวโยงใสชดขอมล

MASTER TRANSACTION

OBS PartNumber Quantity OBS PartNumber AddQuantity

1 1 10 1 4 14 2 2 20 2 6 16 3 3 30 3 2 12 4 4 40 5 5 50

โปรแกรมเดม

74

วตถประสงคคอการปรบปรงขอมลหลกทก ำาหนดดวยขอมลจากรายการชดขอมล โปรแกรมอานรายการตามลำาดบ MASTER จะอานโดยตรงไมไดเรยงตามลำาดบ, ใชคำาสงปรบเปลยนและเลอกคำาสง

ขอสงเกตเทานนทมคาทตรงกนสำาหรบหมายเลขชนสวนซงเปนตวแปรทสำาคญจะมการอานจาก MASTER

data master; set transaction; modify master key=PartNumber; Quantity = Quantity + AddQuantity; run;

Open the MASTER data set for update. Read an observation from the TRANSACTION data set.

Match observations from the MASTER data set based on the values of PartNumber.

Update the information on Quantity by adding the new values from the TRANSACTION data set.

สงผลใหเขาสระบบ

โปรแกรมนไดรบการปรบปรงอยางถกตองแตมนหยดเมอมนไมสามารถพบการเขาคกนสำาหรบคาหมายเลขชนสวน 6 บรรทดตอไปนถกเขยนไปยงลอก SAS:

ERROR: No matching observation was found in MASTER data set. PartNumber=6 AddQuantity=16 Quantity=70 _ERROR_=1 _IORC_=1230015 _N_=2

75

NOTE: The SAS System stopped processing this step because of errors. NOTE: The data set WORK.MASTER has been updated. There were 1 observations rewritten, 0 observations added and 0 observations deleted.

Resulting Data Set

ไฟล MASTER ไดรบการปรบปรงอยางไมถกตอง ตนแบบทมการปรบปรงมหาขอสงเกต ขอสงเกตทหนงไดรบการปรบปรงอยางถกตอง ขอสงเกตใหมไมไดเพมและไมไดปรบปรงตอไปนแสดงใหเหน MASTER ชดอพเดตขอมลไมถกตอง

MASTER

OBS PartNumber Quantity 1 1 10 2 2 20 3 3 30 4 4 54 5 5 50Revised Program

โปรแกรมแกไข

วตถประสงคคอการใชสองการปรบปรงและหนงนอกเหนอไปจาก MASTER ปองกนไมใหขนตอนทขอมลจากการหยดเมอมนไมพบการเขาคกนใน MASTER สำาหรบคาหมายเลขชนสวนท 6 ในรายการ โดยการเพมการตรวจสอบขอผดพลาดในขนตอนนขอมลทไดรบอนญาตใหเสรจสมบรณตามปกตและผลตเปนรนทปรบปรงอยางถกตองจาก MASTER

76

โปรแกรมนใชต วแปรอตโนมต _IORC_ และแมโคร เรยกอตโนมต SYSRC ในกลมเลอกทจะตรวจสอบคาของตวแปร _IORC_ และดำาเนนการกรอกรหสทเหมาะสมขนอยกบวาหรอไมการเขาคกนถกพบ

data master; set transaction; modify master key=PartNumber; select(_iorc_); when(%sysrc(_sok)) do; Quantity = Quantity + AddQuantity; replace; end; when(%sysrc(_dsenom)) do; Quantity = AddQuantity; _error_ = 0; output; end; otherwise do; put 'ERROR: Unexpected value for _IORC_= ' _iorc_; put 'Program terminating. Data step iteration # ' _n_; put _all_; stop; end; end;run;

Open the MASTER data set for update.

Read an observation from the TRANSACTION data set.

Match observations from the MASTER data set based on the value of PartNumber.

77

ใชหลกสตรทถกตองของการดำาเนนการขนอยก บวาคาทตรงกนสำาหรบการหมายเลขชนสวนทพบใน MASTER ปรบปรงจำานวนโดยการเพมคาใหมจากรายการกลมทเลอกดำาเนนการเพอนำารหสทถกตอง เมอการเขาคกนเกดขน (_SOK) ปรบปรงจำานวนและแทนทการสงเกตเปนตนฉบบใน MASTER เมอมการเขาคกน (_DSENOM) จำานวนชดเทากบจ ำานวนเง น เพ มจ ำานวน จากรายการเป นและผนวกการสงเกตใหม _ERROR_ ถกรเซตเปน 0 เพอปองกนไมใหเงอนไขขอผดพลาดทจะเขยนเนอหาของเวกเตอรขอมลโปรแกรมลงในบนทก SAS เมอสภาพทไมคาดคดเกดขนเขยนขอความและเนอหาของเวกเตอรขอมลโปรแกรมเพอบนทกและหยดขนตอน

Resulting Log

สงผลใหเขาสระบบ

ขนตอนการดำาเนนการขอมลไมมขอผดพลาดและขอสงเกตไดรบการปรบปรงใหเหมาะสมและเพมบรรทดตอไปนถกเขยนไปยงลอก SAS:      หมายเหต : WORK.MASTER ช ดขอม ลท ได ร บการปรบปร ง นอกจากนน            2 ขอสงเกตเขยนใหม 1 ขอสงเกตเพมและ 0  สงเกตลบ

Correctly Updated MASTER Data Set

MASTER ทปรบปรงแลวสำาหรบคาหมายเลขชนสวน 2 และ 4 และสงเกตใหมสำาหรบคาหมายเลขชนสวน 6 ตอไปนแสดงใหเหน MASTER ชดปรบปรงอยางถกตองของขอมล:

MASTER

78

OBS PartNumber Quantity 1 1 10 2 2 32 3 3 30 4 4 54 5 5 50 6 6 16 Example 2: Using Error Checking on All Statements That Use KEY=Overview

ตวอยางนแสดงวธการทส ำาคญกคอการใชการตรวจสอบขอผดพลาดของขอมลทงหมดทใช ตวเลอกทสำาคญเมอมการอานขอมล

ขอมลนำาเขาชด

MASTER และช ดขอม ลรายละเอ ยดมท งการจดท ำาด ชน เม อหมายเลขชนสวนสงซอชดขอมลทมคาสำาหรบทกสวนในลำาดบเดยว สงซอเฉพาะของมคาหมายเลขชนสวน 8 ตอไปนแสดงใหเหน MASTER ออกคำาสงและคำาอธบายชดขอมลทปอนเขา

MASTER ORDER

OBS PartNumber Quantity OBS PartNumber

1 100 10 1 200 2 200 20 2 400 3 300 30 3 100 4 400 40 4 300 5 500 50 5 800 6 500 7 600

79

DESCRIPTION

OBS PartNumber PartDescription

1 400 Nuts 2 300 Bolts 3 200 Screws 4 600 Washers

Original Program with Logic Error

โดยมวตถประสงคเพอสรางชดขอมลทมรายละเอยดและจำานวนในสตอกสำาหรบการมสวนรวมในการสงเพยงครงเดยว ยกเวนสำาหรบชนสวนทไมพบในทงสองชดขอมลเขา MASTER และคำาอธบายรายการชดขอมลทมตวเลขสวนหนงของชนสวนทงหมดทอยในลำาดบเดยว ชดขอมลจะถกอานเพอดงรายละเอยดของสวนหนงและอกสวนหนงจะถกอานเพอดงปรมาณทมอยในสตอก

โปรแกรมอานขอมลรายการสงทกำาหนดไวตามลำาดบแลวใชคำาสง SET ในการอานขอมลหลกและคำาอธบายชดโดยตรงขนอยก บคาทส ำาคญของหมายเลขชนสวน เมอการเขาคกนเกดขนในการสงเกตเปนลายลกษณอกษรทมขอมลทจำาเปนทงหมดสำาหรบมลคาของแตละหมายเลขชนสวนในรายการสง ความพยายามครงแรกทใชการแกปญหาขอผดพลาดการตรวจสอบเพยงหนงในสองรายการทใชเปนกญแจสำาคญในการอานขอมลชด

data combine; length PartDescription $ 15; set order; set description key=PartNumber; set master key=PartNumber; select(_iorc_); when(%sysrc(_sok)) do; output;

80

end; when(%sysrc(_dsenom)) do; PartDescription = 'No description'; _error_ = 0; output; end; otherwise do; put 'ERROR: Unexpected value for _IORC_= ' _iorc_; put 'Program terminating.'; put _all_; stop; end; end;run;

Create the COMBINE data set.

 อาน สงเกต จากรายการสงชดขอมล อาน สงเกต จากคำาอธบายและขอมลหลกขนอยกบคาทตรงกนสำาหรบ หมายเลขชนสวน ตวแปรทสำาคญ โปรดทราบวา การตรวจสอบ ไมมขอผดพลาด เกดขนหลงจาก การสงเกตจะถกอาน จากคำาอธบาย  ใชหลกสตร การกระทำาทถกตองขนอยก บวาคาทตรงกน ส ำาหรบหมายเลขชนสวน ทพบใน MASTER หรอคำาอธบาย ( ตรรกะ นจะขนอย บนสมมตฐาน ทผดพลาดวา กลมนเลอกดำาเนนการตรวจสอบ ขอผดพลาด ทงของรายการ กอนหนาน ทมใชตวเลอกมนจรง จะดำาเนนการตรวจสอบขอผดพลาดเรวทสด )กลมทเลอกนำาไปดำาเนนการ รหสทถกตอง เมอการเขาคกนเกดขน ( _SOK ) คาของ หมายเลขชนสวน ใน การสงเกตทจะถก อานจาก MASTER ตรงกบคา หมายเลขชนสวนปจจบนจาก รายการสง ดงนน ผล การสงเกต เมอไมมการเขาคกน( _DSENOM ) , ขอสงเกต ในการ MASTER มคาปจจบนของ หมายเลขชนสวน เพอ กำาหนดคาของ PartDescription เหมาะสมและ สงออก สงเกต _ERROR_ ถกรเซต

81

เปน 0 เพอปองกนไมให เงอนไข ขอผดพลาดทจะเขยนเนอหาของเวกเตอร ขอมลโปรแกรม ลงในบนทก SAS เมอสภาพ ทไมคาดคดเกดขน เขยนขอความ และ เนอหาของเวกเตอร ขอมล โปรแกรมเพอ บนทกและหยดขนตอน ขอมล

Resulting Log

โปรแกรมนจะสรางการแสดงผลขอมลชด แตดำาเนนการหนงในขอผดพลาดบรรทดตอไปนถกเขยนไปยงลอก SAS:

PartNumber=1 PartDescription=Nuts Quantity=10 _ERROR_=1 _IORC_=0 _N_=3 PartNumber=5 PartDescription=No description Quantity=50 _ERROR_=1 _IORC_=0 _N_=6 NOTE: The data set WORK.COMBINE has 7 observations and 3 variables.

Resulting Data Set

ตอไปนแสดงใหเหนวาถกสรางขนอยางไมถกตองขอมล COMBINE 5 ตงขอสงเกตไมควรอยในขอมลชดน มลคา 8 หมายเลขชนสวนไมอยใน MASTER อยางใดอยางหนงหรอคำาอธบายดงนนจำานวนไมควรจะแสดงสำาหรบมน นอกจากนยงมขอสงเกตท 3 และ 7 มคำาอธบายจาก 2 ขอสงเกตและ 6 ตามลำาดบ

82

COMBINE

OBS PartNumber PartDescription Quantity 1 2 Screws 20 2 4 Nuts 40 3 1 Nuts 10 4 3 Bolts 30 5 8 No description 30 6 5 No description 50 7 6 No description 50

Revised Program

เพอสรางผลลพธทถกตองชดขอมลตวอยางนจะด ำาเนนการตรวจสอบขอผดทงรายการทใชตวเลอกสำาคญ:

data combine(drop=Foundes); length PartDescription $ 15; set order; Foundes = 0; set description key=PartNumber; select(_iorc_); when(%sysrc(_sok)) do; Foundes = 1; end; when(%sysrc(_dsenom)) do; PartDescription = 'No description'; _error_ = 0; end; otherwise do; put 'ERROR: Unexpected value for _IORC_= ' _iorc_;

83

put 'Program terminating. Data set accessed is DESCRIPTION'; put _all_; _error_ = 0; stop; end; end;set master key=PartNumber; select(_iorc_); when(%sysrc(_sok)) do; output; end; when(%sysrc(_dsenom)) do; if not Foundes then do; _error_ = 0; put 'WARNING: PartNumber ' PartNumber 'is not in' ' DESCRIPTION or MASTER.'; end; else do; Quantity = 0; _error_ = 0; output; end; end; otherwise do; put 'ERROR: Unexpected value for _IORC_= ' _iorc_; put 'Program terminating. Data set accessed is MASTER'; put _all_; _error_ = 0; stop; end; end; /* ends the SELECT group */

84

Create the COMBINE data set.

 อาน สงเกต จากรายการสงชดขอมล สราง Foundes ตวแปรเพอใหคา ของมนสามารถ นำามาใช เพอระบวาคาหมายเลขชนสวนม เมอมการเขาคกน คำาอธบายชดขอมล อาน สงเกต จาก คำาอธบาย ชดขอมลโดยใช หมายเลขชนสวน เปนตวแปรทสำาคญ

 ใชหลกสตร ทถกตอง ของการดำาเนนการ ขนอยกบวาคาทตรงกน สำาหรบการ หมายเลขชนสวน ทพบใน รายละเอยด กลมทเลอก ดำาเนนการ เพอนำารหสทถกตอง ขนอยกบมลคา ของ _IORC_ เมอ การเขาคกนเกดขน ( _SOK ) คาของ หมายเลขชนสวน ในการสงเกตจะถกอาน จากคำาอธบาย ตรงกบคา ปจจบนจาก order Foundes จะถกตงคา เปน 1 เพอ แสดงใหเหนวา รายละเอยด สวนรวมในการสงเกต ในปจจบนไมมการซำากน ( _DSENOM ) ไมม ขอสงเกต ในคำาอธบาย ทมคาปจจบนของ หมายเลขชนสวน เพอให คำาอธบาย มการตงคาอยางเหมาะสม _ERROR_ ถกรเซตเปน 0 เพอปองกนไมให เกดขอผดพลาดท จะเขยน เนอหาของเวกเตอร ลงในบนทก SAS มลคา _IORC_ อน ๆ ท พบขอบงชสภาพทไมคาดคด ดงนน ขอความถกเขยนไปยงลอกและขนตอนทขอมลจะถก หยด

85

 อาน สงเกต จาก MASTER ชด ขอมลโดยใช หมายเลขชนสวน เปนตวแปร ทสำาคญ

ใชหลกสตร ทถกตอง ของการดำาเนนการ ขนอยกบวาคาทตรงกน ส ำาหรบการ หมายเลขช นสวน ท พบใน MASTER เม อพบการซ ำาก น ( _SOK ) หมายเลขช นสวน ระหวางป จจ บนจาก order และ จาก MASTER , เขยน สงเกต เม อ ไมพบการซ ำาก น ( _DSENOM ) ใน MASTER , ทดสอบคา ของ Foundes ถา Foundes ไมเปนความจรง แลวไมพบคาในรายละเอยด อยางใดอยางหนง เพอให เขยนขอความ ลงในแฟมบนทกแต ไมไดเขยน สงเกต ถา Foundes เปนความจรง แต คาเปน ในคำาอธบาย แตไม MASTER ดงนน เขยน สงเกตแต กำาหนด จำานวน ถง 0 อกคร งถาสภาพ ทไมคาดคด เกดขน เขยนขอความและหยดขนตอน ขอมล

Resulting Log

ขนตอนขอมลดำาเนนการโดยไมผดพลาด หากขอสงเกตทถกสรางขนอยางถกตองและขอความตอไปนถกเขยนขนเพอบนทก: Correctly Created COMBINE Data Set

ตอไปนแสดงใหเหนถงการปรบปรงอยางถกตองขอมล COMBINE ตง โปรดทราบวาไมไดมการสงเกตหมายเลขชนสวนทมมลคา 8 คานจะไมเกดขนใน MASTER อยางใดอยางหนงหรอคำาอธบาย

COMBINE

OBS PartNumber PartDescription Quantity

1 2 Screws 20 2 4 Nuts 40 3 1 No description 10 4 3 Bolts 30

86

5 5 No description 50 6 6 Washers 0

top related