एसएएस में स्कैन फ़ंक्शन का उपयोग कैसे करें (उदाहरण के साथ)
आप किसी स्ट्रिंग से nवां शब्द निकालने के लिए SAS में SCAN फ़ंक्शन का उपयोग कर सकते हैं।
यह फ़ंक्शन निम्नलिखित मूल सिंटैक्स का उपयोग करता है:
स्कैन (स्ट्रिंग, संख्या)
सोना:
- स्ट्रिंग : पार्स करने के लिए स्ट्रिंग
- गिनती : निकालने के लिए nवाँ शब्द
इस सुविधा का उपयोग करने के तीन सबसे सामान्य तरीके यहां दिए गए हैं:
विधि 1: स्ट्रिंग से nवाँ शब्द निकालें
data new_data;
set original_data;
second_word = scan (string_variable, 2 );
run ;
विधि 2: स्ट्रिंग से अंतिम शब्द निकालें
data new_data;
set original_data;
last_word = scan (string_variable, -1 );
run ;
विधि 3: एक स्ट्रिंग से अनेक शब्द निकालें
data new_data;
set original_data;
first_word = scan (string_variable, 1 );
second_word = scan (string_variable, 2 );
third_word = scan (string_variable, 3 );
run ;
निम्नलिखित उदाहरण दिखाते हैं कि एसएएस में निम्नलिखित डेटासेट के साथ प्रत्येक विधि का उपयोग कैसे करें:
/*create dataset*/
data original_data;
input name $20. dirty;
datalines ;
Andy Lincoln Bernard 55
Barren Michael Smith 41
Chad Simpson Arnolds 13
Derrick Parson Henry 29
Eric Miller Johansen 47
Frank Giovanni Goode 61
;
run ;
/*view dataset*/
proc print data = original_data;
उदाहरण 1: स्ट्रिंग से nवाँ शब्द निकालें
निम्नलिखित कोड दिखाता है कि नाम कॉलम में प्रत्येक स्ट्रिंग से दूसरा शब्द कैसे निकाला जाए:
/*extract second word in each row of name column*/
data new_data;
set original_data;
second_word = scan (name, 2 );
run ;
/*view results*/
proc print data =new_data;
ध्यान दें कि सेकंड_वर्ड नामक नए कॉलम में नाम कॉलम में प्रत्येक स्ट्रिंग का दूसरा शब्द शामिल है।
उदाहरण 2: स्ट्रिंग से अंतिम शब्द निकालें
निम्नलिखित कोड दिखाता है कि नाम कॉलम में प्रत्येक स्ट्रिंग के अंतिम शब्द को निकालने के लिए स्कैन फ़ंक्शन में -1 मान का उपयोग कैसे करें:
/*extract last word in each row of name column*/
data new_data;
set original_data;
last_word = scan (name, -1 );
run ;
/*view results*/
proc print data =new_data;
ध्यान दें कि Last_word नामक नए कॉलम में नाम कॉलम में प्रत्येक स्ट्रिंग का अंतिम शब्द शामिल है।
उदाहरण 3: एक स्ट्रिंग से अनेक शब्द निकालें
निम्नलिखित कोड दिखाता है कि नाम कॉलम में प्रत्येक स्ट्रिंग से प्रत्येक शब्द को निकालने के लिए स्कैन फ़ंक्शन का उपयोग कैसे करें:
/*extract each word in each row of name column*/
data new_data;
set original_data;
first_word = scan (name, 1 );
second_word = scan (name, 2 );
third_word = scan (name, 3 );
run ;
/*view results*/
proc print data =new_data;
ध्यान दें कि नाम कॉलम में प्रत्येक स्ट्रिंग के पहले, दूसरे और तीसरे शब्द वाले तीन नए कॉलम बनाए गए हैं।
अतिरिक्त संसाधन
निम्नलिखित ट्यूटोरियल बताते हैं कि एसएएस में अन्य सामान्य कार्य कैसे करें:
एसएएस में SUBSTR फ़ंक्शन का उपयोग कैसे करें
एसएएस में FIND फ़ंक्शन का उपयोग कैसे करें
एसएएस में COALESCE फ़ंक्शन का उपयोग कैसे करें