एक नया एसएएस उपयोगकर्ता के रूप में, NOBS विकल्प आप सभी की जरूरत हो सकती है। हालांकि, जैसे-जैसे आपके कोडिंग कौशल में वृद्धि होती है, आप खुद को ऐसे स्थितियों में पा सकते हैं जहां उचित नहीं है। NOBSपर विकल्प SET कथन सभी मामलों में काम नहीं कर सकता है। लौटाया गया मूल्य डेटा सेट में भौतिक अवलोकनों की संख्या होगी, जिसमें किसी भी अवलोकन भी शामिल हो सकता है जो जगह में हटा दिया गया हो। यह कुछ विचारों के साथ भी काम नहीं कर सकता है (विशेष रूप से बाहरी डेटाबेस से जुड़े विचार)।
डेटा सेट या व्यू में अवांछित अवलोकनों की संख्या को खोजने का "सबसे सुरक्षित" तरीका PROC SQL
का उपयोग करना है और वास्तव में उन्हें गिनती चर में डालकर, उन्हें गिनना है। उदाहरण के लिए, मान लीजिए आप नाम के एक डेटा वस्तु है है:
proc sql noprint;
select count(*) into : nobs
from WORK.HAVE;
quit;
%put 'Obs in data set:' &nobs;
नोट इस काम करता है अगर एक डेटा सेट या एक दृश्य है।
:
वैकल्पिक रूप से, अगर आप सिर्फ एक डेटा सेट पर आपत्ति है, तो आप एसएएस तालिकाएं शब्दकोश दृश्य NLOBS विशेषता है, जो "तार्किक" टिप्पणियों की संख्या (यानी किसी भी नष्ट कर दिया पंक्तियों के लिए खातों के लिए) है वापस जाने के लिए उपयोग कर सकते हैं
proc sql noprint;
select nlobs into : nobs
from dictionary.tables
where libname='WORK'
and memname='HAVE';
quit;
%put 'Obs in data set:' &nobs;
यदि आपका एसएएस डेटा सेट बहुत बड़ा है तो यह निश्चित रूप से अधिक कुशल होगा। मैंने अक्सर सोचा है कि क्यों एसएएस एनएलओबीएस मूल्य एसईटी कथन पर एक विकल्प के रूप में उपलब्ध नहीं है, लेकिन मुझे यकीन है कि ऐसे कारण हैं।
प्रोसी एसक्यूएल, विचार, मैक्रो वैरिएबल, और जगह में हटाए गए अवलोकन आपके लिए बिल्कुल नए हो सकते हैं, लेकिन जैसे ही आप अपने एसएएस सीखने के साथ आगे बढ़ते हैं, आप उनका उपयोग शुरू करने के लिए बाध्य हैं।
आप खुद को सॉर्ट सॉर्ट और डेटा चरणों तक सीमित क्यों करना चाहते हैं? – mvherweg