שלום,
תו הנקודה-פסיק - ";" - הוא התו השימושי ביותר בשפת ה - SAS אבל בדירת הגג באותו המקש במקלדת גר תו אחר, קצת יותר אקזוטי אבל עם פוטנציאל משמעותי לשיפור איכות החיים שלנו כמתכנתי SAS - תו הנקודתיים - ":"
יש לו מספר שימושים די שונים אבל בכולם הוא מייצג דרך פשוטה לזהות את כל האובייקטים שהשם שלהם מתחיל באותם תווים. כמה דוגמאות להמחשה:
דוגמא 1 – זיהוי כל הטבלאות המתחילות באותם תווים
אם אנחנו רוצים לשרשר (מקביל ל – UNION ב – SQL) לטבלה אחת את כל הטבלאות שהשם שלהן מתחיל באותם תווים אז בעזרת תו הנקודתיים זו משימה קלה מאוד
data CLASS;
set SASHELP.CLASS;
run;
data CLASS_BIG;
set SASHELP.CLASS;
run;
data CLASS25;
set SASHELP.CLASS;
run;
data ALL_CLASS;
set CLASS:; *** Note the : following the CLASS word ***;
run;
דוגמא 2 – זיהוי כל המשתנים המתחילים באותם תווים
תו הנקודתיים גם מאפשר לנו לתפוס בקלות את כל המשתנים (עמודות) בטבלה שהשם שלהם מתחיל באותם תווים ולהשתמש בהם בחישובים שלנו בקלות
data AVERAGE_PRICEDATA;
set SASHELP.PRICEDATA;
Avg_Price=mean(of price:);* Averaging the values in columns price, price1, price2 ... price17;
run;
דוגמא 3 – זיהוי כל הערכים המתחילים באותם תווים
אם אנחנו רוצים לשלוף מטבלה את כל הרשומות בהן שם התלמיד מתחיל, למשל, ב – "Ja" אנחנו יכולים , כמובן, להשתמש בפונקציה substr אבל הנקודתיים יחסכו לנו קצת הקלדה
data JA_CLASS;
set SASHELP.CLASS;
if name=:'Ja';
run;
חגי