एसएएस में कंप्रेस फ़ंक्शन का उपयोग कैसे करें (उदाहरण के साथ)


आप स्ट्रिंग से विशिष्ट वर्णों को हटाने के लिए एसएएस में कंप्रेस फ़ंक्शन का उपयोग कर सकते हैं।

यह फ़ंक्शन निम्नलिखित मूल सिंटैक्स का उपयोग करता है:

संपीड़ित करें (स्ट्रिंग, अक्षर हटाने के लिए)

सोना:

  • स्ट्रिंग : पार्स करने के लिए स्ट्रिंग
  • हटाने योग्य वर्ण : स्ट्रिंग से हटाने के लिए एक या अधिक विशिष्ट वर्ण

इस सुविधा का उपयोग करने के चार सबसे सामान्य तरीके यहां दिए गए हैं:

विधि 1: स्ट्रिंग से सभी रिक्त स्थान हटा दें

 data new_data;
    set original_data;
    compressed_string = compress (string_variable);
run ;

विधि 2: स्ट्रिंग से विशिष्ट वर्ण हटाएँ

 data new_data;
    set original_data;
    compressed_string = compress (string_variable, ' !?@# ');
run ;

विधि 3: स्ट्रिंग से सभी वर्णमाला वर्ण हटाएँ

 data new_data;
    set original_data;
    compressed_string = compress (string_variable, '', ' a ');
run ;

विधि 4: स्ट्रिंग से सभी संख्यात्मक मान हटाएँ

 data new_data;
    set original_data;
    compressed_string = compress (string_variable, '', ' d ');
run ;

निम्नलिखित उदाहरण दिखाते हैं कि एसएएस में निम्नलिखित डेटासेट के साथ प्रत्येक विधि का उपयोग कैसे करें:

 /*create dataset*/
data original_data;
    input name $25.;
    datalines ;
Andy Lincoln4 Bernard!
Barren Michael55 Smith!
Chad Simpson7 Arnolds?
Derrick Parson2 Henry
Eric Miller2 Johansen!
Frank Giovanni5 Goode
;
run ;

/*view dataset*/
proc print data = original_data; 

उदाहरण 1: स्ट्रिंग से सभी रिक्त स्थान हटाएँ

निम्नलिखित कोड दिखाता है कि नाम कॉलम में प्रत्येक स्ट्रिंग से सभी रिक्त स्थान कैसे हटाएं:

 /*remove blank spaces from each string in name column*/
data new_data;
    set original_data;
    compressed_name = compress (name);
run ;

/*view results*/
proc print data =new_data;

ध्यान दें कि टेबलेट_नाम नामक नए कॉलम में प्रत्येक स्ट्रिंग से सभी रिक्त स्थान हटा दिए गए हैं।

उदाहरण 2: स्ट्रिंग से विशिष्ट वर्ण हटाएँ

निम्नलिखित कोड दिखाता है कि नाम कॉलम में प्रत्येक स्ट्रिंग से सभी प्रश्न और विस्मयादिबोधक चिह्न कैसे हटाएं:

 /*remove question marks and exclamation points from each string in name column*/
data new_data;
    set original_data;
    compressed_name = compress (name, ' ?! ');
run ;

/*view results*/
proc print data =new_data;

ध्यान दें कि टेबलेट_नाम नामक नए कॉलम में प्रत्येक स्ट्रिंग से सभी प्रश्न और विस्मयादिबोधक चिह्न हटा दिए गए हैं।

उदाहरण 3: स्ट्रिंग से सभी वर्णमाला वर्ण हटाएँ

निम्नलिखित कोड दिखाता है कि नाम कॉलम में प्रत्येक स्ट्रिंग से सभी वर्णमाला वर्णों को कैसे हटाया जाए:

 /*remove all alphabetical characters from each string in name column*/
data new_data;
    set original_data;
    compressed_name = compress (name, '', ' a ');
run ;

/*view results*/
proc print data = new_data;

ध्यान दें कि टेबलेट_नाम नामक नए कॉलम में प्रत्येक स्ट्रिंग से सभी वर्णमाला वर्ण हटा दिए गए हैं।

उदाहरण 4: स्ट्रिंग से सभी संख्यात्मक मान हटाएँ

निम्नलिखित कोड दिखाता है कि नाम कॉलम में प्रत्येक स्ट्रिंग से सभी संख्यात्मक मानों को कैसे हटाया जाए:

 /*remove all numeric values from each string in name column*/
data new_data;
    set original_data;
    compressed_name = compress (name, '', ' d ');
run ;

/*view results*/
proc print data =new_data;

ध्यान दें कि टेबलेट_नाम नामक नए कॉलम में प्रत्येक स्ट्रिंग से सभी संख्यात्मक मान हटा दिए गए हैं।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि एसएएस में अन्य सामान्य कार्य कैसे करें:

एसएएस में SUBSTR फ़ंक्शन का उपयोग कैसे करें
एसएएस में FIND फ़ंक्शन का उपयोग कैसे करें
एसएएस में COALESCE फ़ंक्शन का उपयोग कैसे करें

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *