এসএএস প্রোগ্রামিং - এসএএস-এ কোড কীভাবে শিখুন!



এসএএস প্রোগ্রামিংয়ের এই ব্লগটি আপনাকে এসএএস প্রোগ্রামিং ধারণার সাথে পরিচয় করিয়ে দেয় এবং উদাহরণ সহ বিশদভাবে এসএএসের বিভিন্ন মৌলিক বিষয়গুলি বুঝতে আপনাকে সহায়তা করে।

এই ব্লগে, আমি আপনাকে এসএএস প্রোগ্রামিংয়ের কয়েকটি গুরুত্বপূর্ণ ধারণার সাথে পরিচয় করিয়ে দেব। আমরা শুরু করার আগে, এসএএসের সাথে আপনার পরিচিত হওয়া গুরুত্বপূর্ণ। আমার আগের ব্লগটি চালু আছে এসএএস টিউটোরিয়াল আপনাকে এসএএস, এর অ্যাপ্লিকেশনগুলি বুঝতে সহায়তা করবে এবং এসএএস বিশ্ববিদ্যালয় সংস্করণ ইনস্টল করতে সহায়তা করবে, যা আমরা এখানে প্রোগ্রামিং পরিবেশ হিসাবে ব্যবহার করব the কী দক্ষতা রয়েছে তা ভাবছেন, আপনার এই বছরের মাস্টার করা উচিত? এছাড়াও, আপনি যদি ডেটা অ্যানালিটিকায় পদক্ষেপ নেওয়ার পরিকল্পনা করে থাকেন, এটির সাথে শুরু করার অন্যতম সেরা উপায়।

এডুরেকা 2019 টেক ক্যারিয়ার গাইড বাইরে! সর্বাধিক কাজের ভূমিকা, সঠিক শিক্ষার পাথ, শিল্পের দৃষ্টিভঙ্গি এবং আরও অনেক কিছু। ডাউনলোড করুন এখন





সুতরাং আর কোনও ছাড়াইবিলম্ব,এস এস এস প্রোগ্রামিং দিয়ে শুরু করা যাক, আমরা কি করব?

এই ব্লগটি আপনাকে নিম্নলিখিত বিষয়গুলি বুঝতে সাহায্য করবে:



আমরা কোডিং শুরু করার আগে, আমি আপনাকে কয়েকটি গুরুত্বপূর্ণ পদ দিয়ে সংক্ষিপ্ত করতে চাই যা এসএএস প্রোগ্রামিংয়ের জন্য গুরুত্বপূর্ণ।

এসএএস প্রোগ্রামিংয়ের ফান্ডামেন্টালস

এসএএস উইন্ডোজ

বড় সংস্থা এবং প্রশিক্ষণ প্রতিষ্ঠান এসএএস উইন্ডোজ ব্যবহার পছন্দ করে। এসএএস উইন্ডোজের প্রচুর ইউটিলিটি রয়েছে যা কোড লেখার জন্য প্রয়োজনীয় সময় হ্রাস করতে সহায়তা করে।

নিম্নলিখিত চিত্রটি এসএএস উইন্ডোজের বিভিন্ন অংশ দেখায়।



এসএএস-উইন্ডোজ - এসএএস প্রোগ্রামিং - এডুরেকা

  • উইন্ডো লগ করুন : এটি একটি এক্সিকিউশন উইন্ডো। এখানে, আপনি আপনার প্রোগ্রামের কার্যকারিতা পরীক্ষা করতে পারেন। এটি ত্রুটি, সতর্কতা এবং নোটগুলিও প্রদর্শন করে।
  • কোড উইন্ডো :এই উইন্ডোটি সম্পাদক উইন্ডো হিসাবেও পরিচিত। এটিকে একটি খালি কাগজ বা একটি নোটপ্যাড হিসাবে বিবেচনা করুন, যেখানে আপনি নিজের এসএএস কোডটি লিখতে পারেন।
  • আউটপুট উইন্ডো : নামটি যেমন বোঝায়, এই উইন্ডোটি প্রোগ্রামে / কোডের আউটপুট প্রদর্শন করে যা আপনি সম্পাদকটিতে লিখেন।
  • ফলাফল উইন্ডো : এটি এমন একটি সূচি যা একটি সেশনে চালিত সমস্ত প্রোগ্রামের আউটপুট তালিকা করে list যেহেতু এটি একটি নির্দিষ্ট সেশনের ফলাফল ধারণ করে, আপনি যদি সফ্টওয়্যারটি বন্ধ করে পুনরায় চালু করেন, ফলাফল উইন্ডোটি খালি থাকবে।
  • উইন্ডো অন্বেষণ করুন : এটি সিস্টেমের সমস্ত লাইব্রেরির তালিকা ধারণ করে। আপনি এখানে সিস্টেম সমর্থিত ফাইলগুলিও ব্রাউজ করতে পারেন।

কয়েকটি সংস্থা লিনাক্স ব্যবহার করে তবে কোনও গ্রাফিকাল ইউজার ইন্টারফেস ছাড়াই আপনাকে প্রতিটি প্রশ্নের জন্য কোড লিখতে হবে। অতএব এটি ব্যবহারে অসুবিধা হয়।

এসএএস ডেটা সেট

এসএএস ডেটা সেটগুলিকে ডেটা ফাইল হিসাবে ডাকা হয়। ডেটা ফাইলগুলি সারি এবং কলামগুলির সমন্বয়ে গঠিত। সারিগুলি পর্যবেক্ষণ এবং কলামগুলি ধরে রাখেপরিবর্তনশীল নাম

এসএএস ভেরিয়েবলগুলি

এসএএসের দুটি ধরণের ভেরিয়েবল রয়েছে:

  • সংখ্যা পরিবর্তনশীল : এটি ডিফল্ট ভেরিয়েবল টাইপ। এই পরিবর্তনগুলি গাণিতিক প্রকাশে ব্যবহৃত হয়।
  • চরিত্রের পরিবর্তনশীল :ক্যারেক্টার ভেরিয়েবলগুলি এমন মানগুলির জন্য ব্যবহৃত হয় যা গাণিতিক এক্সপ্রেশনগুলিতে ব্যবহৃত হয় না।
    এগুলি পাঠ্য বা স্ট্রিং হিসাবে বিবেচিত হয়। একটি ভেরিয়েবল একটি যুক্ত করে একটি চরিত্রের পরিবর্তনশীল হয়ে যায়‘$’ এসইগচলক নামের শেষে of

এসএএস লাইব্রেরি

এসএএস লাইব্রেরি এসএএস ফাইলগুলির একটি সংগ্রহ যা আপনার কম্পিউটারে একই ফোল্ডার বা ডিরেক্টরিতে সঞ্চিত থাকে।

  • অস্থায়ী গ্রন্থাগার : এই লাইব্রেরিতে, এসএএস অধিবেশন শেষ হলে ডেটা সেট মুছে ফেলা হবে।
  • স্থায়ী গ্রন্থাগার : ডেটা সেটগুলি স্থায়ীভাবে সংরক্ষিত হয়। সুতরাং, তারা অধিবেশন জুড়ে উপলব্ধ।

ব্যবহারকারীরা কীওয়ার্ড ব্যবহার করে ব্যবহারকারী সংজ্ঞায়িত গ্রন্থাগার হিসাবে পরিচিত একটি নতুন গ্রন্থাগার তৈরি বা সংজ্ঞায়িত করতে পারেন LIBNAME । এগুলি স্থায়ী গ্রন্থাগারও।

এসএএস প্রোগ্রামিং: এসএএস কোড স্ট্রাকচার

এসএএস প্রোগ্রামিং দুটি বিল্ডিং ব্লকের উপর ভিত্তি করে:

  • ডেটা পদক্ষেপ : ডেটা পদক্ষেপটি একটি এসএএস ডেটা সেট তৈরি করে এবং তারপরে একটি প্রোসি পদক্ষেপে ডেটা পাস করে
  • পিআরসি পদক্ষেপ : প্রোসি পদক্ষেপটি ডেটা প্রক্রিয়া করে

একটি এসএএস প্রোগ্রামের নীচে উল্লিখিত নিয়মগুলি অনুসরণ করা উচিত:

  • প্রায় প্রতিটি কোডই ডেটা বা একটি প্রোসি পদক্ষেপের মাধ্যমে শুরু হবে
  • এসএএস কোডের প্রতিটি লাইন একটি আধা কোলন দিয়ে শেষ হয়
  • একটি এসএএস কোড আরএন বা কোয়েট কীওয়ার্ডের সাথে শেষ হয়
  • এসএএস কোডগুলি সংবেদনশীল নয়
  • আপনি বিভিন্ন লাইন জুড়ে একটি কোড লিখতে পারেন বা আপনি এক লাইনে একাধিক বিবৃতি লিখতে পারেন

এখন আমরা কয়েকটি প্রাথমিক পরিভাষা দেখেছি, আসুন এসএসএস প্রোগ্রামিংটি এই বেসিক কোডটি দিয়ে শুরু করি:

ডেটা কর্মচারী_আইনফো ইনপুট এমপিআইডি এমপ_নাম $ এমপ_ ভার্টিকাল $ ডেটালাইন 101 ম্যাক এসকিউএল 102 রমা এসএএস 103 প্রিয়া জাভা 104 কার্তিক এক্সেল 105 মনদীপ এসএএস রান

উপরের কোডে, আমরা একটি ডেটা সেট তৈরি করেছি যা কর্মচারী_আইনফো নামে পরিচিত। এটিতে তিনটি ভেরিয়েবল রয়েছে, একটি এমপ_আইডি হিসাবে সংখ্যার ভেরিয়েবল এবং এমপ_নাম এবং এমপ_ ভার্টিকাল হিসাবে দুটি অক্ষর ভেরিয়েবল। রান কমান্ড আউটপুট উইন্ডোতে সেট করা ডেটা প্রদর্শন করে।

নীচের চিত্রটি উল্লিখিত কোডটির আউটপুট দেখায়।

মনে করুন আপনি প্রিন্ট ভিউতে ফলাফলটি দেখতে চান, তবে আপনি একটি প্রস প্রিন্ট পদ্ধতি ব্যবহার করে এটি করতে পারেন, বাকি কোডটি একই রয়েছে।

ডেটা কর্মচারী_আইনফো ইনপুট এমপআইডি এমপ_নাম $ এমপ_ ভার্টিকাল $ ডেটালাইন 101 ম্যাক এসকিউএল 102 রমা এসএএস 103 প্রিয়া জাভা 104 কার্তিক এক্সেল 105 মনদীপ এসএএস রান চালিত প্রোসি প্রিন্ট ডেটা = কর্মচারী_ইনফো রান

নীচের চিত্রটি উপরের কোডটির আউটপুট দেখায়।

আমরা সবেমাত্র একটি ডেটা সেট তৈরি করেছি এবং বুঝতে পেরেছি যে কীভাবে PRINT পদ্ধতি কাজ করে। এখন, আসুন উপরের ডেটা সেটটি গ্রহণ করুন এবং এটি আরও প্রোগ্রামিংয়ের জন্য ব্যবহার করুন। ধরা যাক আমরা ডেটা সেটে কর্মচারীর যোগদানের তারিখটি যুক্ত করতে চাই। সুতরাং আমরা ডিওজে নামে একটি ভেরিয়েবল তৈরি করি, এটি ইনপুট হিসাবে দেই এবং ফলাফলটি মুদ্রণ করি।

ডেটা কর্মচারী_আইনফো ইনপুট এমপ_আইডি এমপি_নাম $ এমপ_ ভার্টিকাল $ ডিওজে ডেটালাইন 101 ম্যাক এসকিউএল 18/08/2013 102 রমা এসএএস 25/06/2015 103 প্রিয়া জাভা 21/02/2010 104 কার্তিক এক্সেল 19/05/2007 105 মনদীপ এসএএস 11/09/2016 প্রোসি প্রিন্ট ডেটা চালান = কর্মচারী_আইনফো চালান

নীচের চিত্রটি উপরের কোডটির আউটপুট দেখায়। এটি দৃশ্যমান যে একটি পরিবর্তনশীল তৈরি হয়েছিল, তবে ডিওজেটির মান মুদ্রিত হয়নি। পরিবর্তে, আমরা দেখতে পাই যে বিন্দুগুলি তারিখের মানগুলি প্রতিস্থাপন করেছে।


এটা কেন হল? ঠিক আছে, ডিওজে ভেরিয়েবল একটি প্রত্যয় ‘$’ ছাড়াই, এর অর্থ, ডিফল্টরূপে এসএএস এটির সংখ্যার ভেরিয়েবল হিসাবে পড়বে। তবে, আমরা যে ডেটা প্রবেশ করেছি তাতে একটি বিশেষ অক্ষর রয়েছে ‘/’, সুতরাং এটি ফলাফল মুদ্রণ করে না কারণ এটি নিখুঁতভাবে সংখ্যার ডেটা নয়। লগ উইন্ডোটি পরীক্ষা করে দেখলে আপনি ‘ভেরিয়েবল ডিওজে-র জন্য অবৈধ ডেটা’ হিসাবে একটি ত্রুটি বার্তা দেখতে পাবেন

এখন আমরা কীভাবে এই সমস্যার সমাধান করব? ভাল, এটির সমাধানের একটি উপায় হ'ল ডিওজে ভেরিয়েবলের জন্য প্রত্যয় ‘$’ ব্যবহার করা। এটি ডিওজে ভেরিয়েবলকে অক্ষরে রূপান্তরিত করবে এবং আপনি তারিখের মানগুলি মুদ্রণ করতে সক্ষম হবেন। আসুন কোডে পরিবর্তন করে আউটপুট দেখতে দিন।

ডেটা কর্মচারী_আইনফো ইনপুট এমপিআইডি এমপি_নাম $ এমপ_ ভার্টিকাল $ ডিওজে $ ডাটালিন 101 ম্যাক এসকিউএল 18/08/2013 102 রমা এসএএস 25/06/2015 103 প্রিয়া জাভা 21/02/2010 104 কার্তিক এক্সেল 19/05/2007 105 মনদীপ এসএএস 11/09 / 2016 পরিচালনা করুন প্রিন্ট প্রিন্ট ডেটা = কর্মচারী_আইনফো চালান

আউটপুট স্ক্রিন নিম্নলিখিত আউটপুট প্রদর্শন করবে।


আপনি দেখতে পারেন যে ডিওজেএকে অক্ষরে রূপান্তর করে ডেটা মানগুলি তারিখ হিসাবে প্রদর্শিত হয়। তবে এটি একটি অস্থায়ী সমাধান। আমাকে কীভাবে তা ব্যাখ্যা করতে দিন?

ঠিক আছে, কল্পনা করুন যে কোনও ব্যাঙ্কের একটি একই ডেটা সেট রয়েছে। ডেটা সেটটিতে অ্যাকাউন্ট ধারকের বিশদ যেমন loanণের পরিমাণ, কিস্তি,এবংloanণের কিস্তির জন্য নির্ধারিত তারিখ কল্পনা করুন, ধারক একটি কিস্তি দেওয়ার জন্য তার সময়সীমাটি মিস করেছেন এবং ব্যাংক বিলম্ব গণনা করতে চায়। ব্যাংককে সময়সীমার তারিখ এবং বর্তমান তারিখের মধ্যে পার্থক্য গণনা করতে হবে।

তবে, যদি ব্যাঙ্কের ডেটা সেটটিতে চরিত্রের ফর্ম্যাটে তারিখ থাকে, তবে ব্যাংক তাতে গাণিতিক ক্রিয়াকলাপ সম্পাদন করতে সক্ষম হবে না। এই সমস্যাটি আমাদের ডেটা সেটকেও প্রভাবিত করতে পারে। তাহলে আমরা কীভাবে এই সমস্যার সমাধান করব?

পরবর্তী ধারণা আপনাকে এই সমস্যাটি কাটিয়ে উঠতে সহায়তা করবে।

এসএএস-তে তথ্য এবং ফর্ম্যাটগুলি

যদি আপনি এসএএস প্রোগ্রামিংয়ে ভাল হতে চান তবে আপনি এই বিষয়টি ভালভাবে বুঝতে গুরুত্বপূর্ণ।আপনি যদি স্মরণ করতে পারেন তবে আমি আগেই উল্লেখ করেছি যে এসএএসের দুটি স্ট্যান্ডার্ড ভেরিয়েবল টাইপ রয়েছে:

  • সংখ্যার
  • চরিত্র

যখন এসএএস অ-মানক ভেরিয়েবলগুলি জুড়ে আসে, এসএএস একটি ত্রুটি ফেলবে বা আপনি পছন্দসই আউটপুট পাবেন না। এই সমস্যাটি কাটিয়ে উঠতে, এসএএস ব্যবহার করেঅবগতএবং ফর্ম্যাট।

আরও খোঁজ

তথ্যগুলি সাধারণত বাইরের ফাইল বা ফ্ল্যাট ফাইলগুলি (যেমন পছন্দ করে) থেকে ডেটা পড়তে বা ইনপুট করতে ব্যবহৃত হয়পাঠ্য ফাইল বা অনুক্রমিক ফাইল)। কীভাবে পড়তে হয় সে সম্পর্কে তথ্যসূত্র এসএএসকে নির্দেশ দেয়এসএএস ভেরিয়েবলগুলিতে ডেটা। এসএএসের তিন ধরণের তথ্য রয়েছে:অক্ষর, সংখ্যা এবং তারিখ / সময় নিম্নলিখিত অনুযায়ী তথ্য দেওয়া হয়বাক্য গঠন:

  • চরিত্রের তথ্য: F তথ্য
  • সংখ্যাগত অবহিত: INFORMATw.d
  • তারিখ / সময় অবহিত: তথ্য

‘$’ একটি চরিত্রের তথ্যকে নির্দেশ করে। তথ্য কখনও কখনও alচ্ছিক বোঝায়এসএএস ইনফরম্যাট নাম। ‘ডাব্লু’ এর দৈর্ঘ্য (বাইট বা কলামের সংখ্যা) নির্দেশ করেপরিবর্তনশীল। ‘ডি’ সংখ্যার ডেটাতে ডান সংখ্যার সংখ্যা নির্দিষ্ট করতে ব্যবহৃত হয়দশমিক স্থান। সমস্ত তথ্যে অবশ্যই দশমিক বিন্দু (।) থাকতে হবে যাতে এস.এ.এস.
একটি এসএএস ভেরিয়েবল থেকে একটি তথ্যসূত্র পৃথক করুন।

আসুন আমরা আমাদের আগের কোডটিতে ফিরে যাই এবং তারিখ / সময় ইনফর্ম্যাটটি আমাদের সহায়তা করে কিনা তা দেখুন। সুতরাং আসুন সেই অনুযায়ী কোডটি পরিবর্তন করুন এবং এটিতে একটি তারিখ ইনফরম্যাট যুক্ত করুন:

ডেটা কর্মচারী_আইনফো ইনপুট এমপআইডি এমপি_নাম $ এমপ_ ভার্টিকাল $ ডিওজে তথ্য ডিওজে ডিডিএমইআই 10। ডেটালাইনস 101 ম্যাক এসকিউএল 18/08/2013 102 রমা এসএএস 25/06/2015 103 প্রিয়া জাভা 21/02/2010 104 কার্তিক এক্সেল 19/05/2007 105 মনদীপ এসএএস 11/09/2016 পরিচালনা করুন প্রিন্ট ডেটা = কর্মচারী_আইএনফো রান

কোডের 3 নম্বর লাইন এসএএসকে তারিখটি ব্যবহার করে পরিবর্তনশীল ‘যোগদানের তারিখ’ (ডিওজে) পড়তে নির্দেশ দেয়
ইনফরমেশন এমএমডিডিওয়াই। প্রতিটি তারিখের ক্ষেত্রটি 10 ​​স্পেস দখল করে, 'ডাব্লু।' যোগ্যতা অর্জন করে10 এ সেট করুন।

কোডের আউটপুট নীচের মত দেখতে হবে।

ফলাফলটি দেখায় যে আমাদের এখনও কাঙ্ক্ষিত ফলাফল নেই, পরিবর্তে ডিওজে কলামে কিছু সংখ্যক মান রয়েছে যা আমাদের নির্দিষ্ট করা তারিখগুলি নয়। এখন, কেন? ঠিক আছে, একবার তারিখটি কোনও তথ্য তারিখের সাথে পড়লে, এসএএস একটি সংখ্যা হিসাবে তারিখটি সঞ্চয় করে। তার অর্থ, এটি তারিখ এবং 1 জানুয়ারী, 1960 এর মধ্যে দিনের সংখ্যা হিসাবে পাঠ করা হয় (উদাহরণস্বরূপ: 3/15/1994 12492 হিসাবে সঞ্চিত)।

এর পিছনে কারণটি হ'ল এসএএসের তিনটি পৃথক কাউন্টার রয়েছে যা তারিখ এবং সময় ট্র্যাক করে। এই তারিখ কাউন্টারগুলি 1 জানুয়ারী, 1960 সালে শূন্যে শুরু হয়েছিল Hence সুতরাং 1/1/1960 এর আগে তারিখগুলির নেতিবাচক মান রয়েছে এবং তার পরে যে কোনও তারিখের ইতিবাচক মান রয়েছে। প্রতিদিন মধ্যরাতে, তারিখের কাউন্টারটি এক এক করে বাড়ানো হয়।

একটি গল্পে এটি আছে যে এসএএসের প্রতিষ্ঠাতা আইবিএম 370 সিস্টেমের আনুমানিক জন্ম তারিখটি ব্যবহার করতে চেয়েছিলেন এবং তারা আনুমানিক স্মরণে রাখার সহজ হিসাবে 1960 সালের 1 জানুয়ারী বেছে নিয়েছিল।

কলাম ডিওজে এই সংখ্যাগুলি প্রদর্শন করার কারণটি আপনি এখন জানেন কারণ আসুন আমরা এই সমস্যাটি সমাধান করার চেষ্টা করি। এই সমস্যাটি কাটিয়ে উঠতে আমরা ফর্ম্যাটটি ব্যবহার করি।

ফর্ম্যাট

তথ্যগুলি পড়ার জন্য নির্দেশাবলী হ'ল ফর্ম্যাটগুলি হ'ল নির্দেশাবলী প্রদর্শিত বা প্রদর্শিত হয়আউটপুট ডেটাএকটি ভেরিয়েবলের জন্য একটি ফর্ম্যাট নির্ধারণ করা আপনি SAS কে ভেরিয়েবলের মানগুলি প্রদর্শন করতে বলছেন। ফর্ম্যাটগুলি তথ্য হিসাবে তিনটি শ্রেণিতে বিভক্ত করা হয় (চরিত্র, সংখ্যা এবং তারিখ-সময়) এবং সর্বদা একটি বিন্দু থাকে a

ফর্ম্যাট স্টেটমেন্টের সাধারণ ফর্মটি হ'ল:

জাভাতে এমভিসি ডিজাইনের প্যাটার্ন
  • ফরমেট ভেরিয়েবল-নাম ফর্ম্যাট-NAME।

ফরমেট কমান্ড ব্যবহার করে আমরা তারিখটি সঠিকভাবে প্রদর্শন করতে পারি কি না তা দেখতে আমাদের কোডাস্ত্রে কর্মচারী কর্মচারী_আইনফো সহ ফিরে যাই go

ডেটা কর্মচারী_আইনফো ইনপুট এমপআইডি এমপি_নাম $ এমপ_ ভার্টিকাল $ ডিওজে তথ্য ডিওজে ডিডিএমইআই 10। ফর্ম্যাট ডিওজেডিডিএমএমই 10। ডেটালাইনস 101 ম্যাক এসকিউএল 18/08/2013 102 রমা এসএএস 25/06/2015 103 প্রিয়া জাভা 21/02/2010 104 কার্তিক এক্সেল 19/05/2007 105 মনদীপ এসএএস 11/09/2016 পরিচালনা করুন প্রিন্ট ডেটা = কর্মচারী_আইএনফো রান

আমরা উপরের কোডটিতে 4 নম্বর লাইনে ফরমেট কমান্ড ব্যবহার করেছি। নিম্নলিখিত আউটপুট স্ক্রিনটি আমাদের পছন্দসই আউটপুট দেবে।

আমরা তারিখ বিন্যাস কমান্ড ব্যবহার করে ডেটা সেটটি সফলভাবে প্রদর্শন করেছি। আমি আশা করি আপনি কীভাবে ফরম্যাট এবং ইনফরম্যাট ব্যবহার করবেন তা বুঝতে পেরেছেন।আসুন আমাদের এসএএস প্রোগ্রামিং ব্লগটি নিয়ে এগিয়ে চলুন এবং আরও একটি গুরুত্বপূর্ণ ধারণাটি দেখুন।

এসএএস লুপস

এসএএস প্রোগ্রামিং করার সময় আমরা এমন পরিস্থিতিগুলির মুখোমুখি হতে পারি যেখানে আমাদের বারবার একটি কার্যকর করতে হবেকোড ব্লক বেশ কয়েকবার। বারবার একই সেট স্টেটমেন্ট লিখতে অসুবিধা হয়। লুপগুলি ছবিতে আসে This এসএএস-এ, ল স্টোরটি লুপ প্রয়োগ করতে ব্যবহৃত হয়। এটি ড লুপ নামেও পরিচিত। নীচের চিত্রটি দেখায়এসএএস-এ লুপের বিবৃতিগুলির সাধারণ ফর্ম।

এসএএসে ডিও লুপের ধরণগুলি নিম্নলিখিত:

  • সূচক : সূচক ভেরিয়েবলের স্টপ মান পর্যন্ত লুপটি শুরু মান থেকে অব্যাহত থাকে।
  • যখন : লুপ যতক্ষণ অবধি চলতে থাকে যখন শর্ত মিথ্যা হয়ে যায়
  • অবধি : লুপটি অবধি চলতে থাকে অবধি অবস্থা সত্য হয়ে ওঠে।

সূচক লুপ করুন

আমরা সূচনা ভেরিয়েবলটি একটি স্টার্ট এবং স্টপ মান হিসাবে ব্যবহার করি সূচক লুপ করুন । সূচক ভেরিয়েবলের চূড়ান্ত মান পৌঁছানো অবধি এসএএস স্টেটমেন্টগুলি বারবার কার্যকর করা হবে।
বাক্য গঠন:

সূচীযোগ্য করুন = এসএএসের বিবৃতি চূড়ান্তকরণের প্রারম্ভিক মূল্য শেষ করুন

আসুন ডো ইনডেক্স লুপটি বুঝতে নমুনা কোডটি একবার দেখুন। নীচের কোডে, ভিএআর সূচক পরিবর্তনশীল vari

ডেটা নমুনা লুপ SUM = 0 করুন VAR = 1 থেকে 10 SUM = SUM + VAR সমাপ্তি প্রিন্ট প্রিন্ট তথ্য = নমুনা লুপ রান

আপনি উপরের কোডটি কার্যকর করবেন, আপনি নিম্নলিখিত আউটপুট পাবেন।

যখন লুপ করবেন

দ্য যখন না লুপ একটি WHIL শর্ত ব্যবহার করে। শর্তটি সত্য হওয়ার পরে এই লুপটি কোডের ব্লক কার্যকর করে এবং শর্তটি মিথ্যা না হওয়া অবধি এটি কার্যকর করে চলে। শর্তটি মিথ্যা হয়ে গেলে লুপটি বন্ধ হয়ে যায়।

বাক্য গঠন:

(শর্ত) এসএএসের বিবৃতি শেষ করার সময় করুন

নীচের নমুনা কোডটি আপনাকে লুপ কী করতে বুঝতে সহায়তা করবে।

ডেটা নমুনা লুপ SUM = 0 VAR = 1 করুন (VAR)<15) SUM = SUM + VAR VAR+1 END PROC PRINT DATA = SampleLoop Run 

উপরের কোডটি আপনাকে নিম্নলিখিত আউটপুট দেবে।

লুপ অব ডু

লুপ অব লুপ একটি ব্যবহার করে অবধি কন্ডিশন.এটি লুপ শর্তটি মিথ্যা হয়ে যাওয়ার পরে কোডের ব্লক কার্যকর করে এবং শর্তটি সত্য না হওয়া অবধি কার্যকর করে। শর্তটি সত্য হয়ে গেলে লুপটি বন্ধ হয়ে যায়।

বাক্য গঠন:

(শর্ত) এসএএসের বিবৃতিগুলি শেষ না হওয়া পর্যন্ত করুন

আসুন স্যাম্পল প্রোগ্রামটি একবার দেখে নিই।

ডেটা নমুনা লুপ SUM = 0 VAR = 1 অবধি করুন (VAR> 15) SUM = SUM + VAR VAR + 1 সমাপ্তি প্রিন্ট প্রিন্ট চালান

কোডটির নিম্নলিখিত ফলাফল রয়েছে।

সুতরাং আমরা এসএএস প্রোগ্রামিং এ লুপের ধারণাটি শেষ করেছি। আমরা এখনও অবধি অধ্যয়নরত সমস্ত বিষয়গুলি সাধারণভাবে এসএএস প্রোগ্রামিংয়ের মূল বিষয়গুলি সম্পর্কে কথা বলেছি।

এখন আসুন আমরা কিছু পরিসংখ্যানমূলক পদ্ধতিটি দেখে নিই। এই পদ্ধতিগুলি উন্নতদের জন্য বেস তৈরি করবে বিশ্লেষণাত্মক পদ্ধতি

নতুন আপডেট পেতে আমাদের ইউটিউব চ্যানেলে সাবস্ক্রাইব করুন ..!

এসএএস ব্যবহার করে বুনিয়াদি পরিসংখ্যান পদ্ধতি

প্রকল্পের অর্থ

এই পদ্ধতিটি পাটিগণিত গড় এবং মানক বিচ্যুতি গণনা করতে ব্যবহৃত হয়। লোকেরা যারা পরিসংখ্যানে নতুন তারা এই শর্তাদি বুঝতে অসুবিধা পেতে পারে। সুতরাং কোডিং শুরু করার আগে এবং এই পদ্ধতিটি ব্যবহার করার আগে। আমি এই পদগুলির অর্থ কী তা বোঝানোর চেষ্টা করব।

আসুন গণিতের মধ্য দিয়ে শুরু করা যাক এবং এটি গণনা করার জন্য কীভাবে এসএএস প্রোগ্রামিংয়ে প্রোকের অর্থ ব্যবহৃত হয়।

পাটিগণিত গড়

ভেরিয়েবলের সংখ্যা দ্বারা বিভক্ত সংখ্যাযুক্ত ভেরিয়েবলের মানটির যোগফল আপনাকে দেয় পাটিগণিত গড় । এটি গড় হিসাবেও পরিচিত এবং এটি কেন্দ্রীয় প্রবণতার একটি পরিমাপ। কেন্দ্রীয় প্রবণতার একটি পরিমাপ এমন একক মান যা তথ্যের সেটের মধ্যে কেন্দ্রীয় অবস্থান চিহ্নিত করে ডেটাগুলির একটি সেট বর্ণনা করার চেষ্টা করে।

এসএএস প্রোগ্রামিংয়ে, আপনি গাণিতিক গড় গণনা করার জন্য প্রোসি মন ব্যবহার করেন। এই পদ্ধতিটি আপনাকে কোনও ডেটা সেটের সমস্ত ভেরিয়েবল বা কয়েকটি ভেরিয়েবলের গড় খুঁজে পেতে দেয়। আপনি গ্রুপ তৈরি করতে পারেন এবং সেই গোষ্ঠীর সাথে নির্দিষ্ট ভেরিয়েবলের গড় গণনা করতে পারেন।

বাক্য গঠন:

প্রোসি অর্থ ডেটা = ডেটাসেট ক্লাস ভেরিয়েবল ভার ভেরিয়েবল
  • পরিবর্তনশীল : উপরের সিনট্যাক্সের ভেরিয়েবলগুলি ডেটা সেট থেকে ভেরিয়েবলগুলি নির্দেশ করে যার অর্থ গণনা করতে হবে।

মিডিয়া অফ এ ডেটাসেট

আপনি যদিকোনও ভেরিয়েবল ছাড়াই কেবল ডেটা সেট নাম সরবরাহ করুন, আপনি কোনও ডেটা সেটে সমস্ত ভেরিয়েবলের গড় গণনা করতে পারেন।

আসুন একটি নমুনা কোডটি দেখুন। আমি একটি পূর্বনির্ধারিত এসএএস ডেটা সেটটিকে 'গাড়ি' হিসাবে ডাকা বলে বিবেচনা করেছি। নিম্নলিখিত কমান্ডটি ডেটা সেট প্রদর্শন করবে।

PROC PRINT ডেটা = sashelp.CARS চালান

নীচের চিত্রটি উপরের কোডের আউটপুট দেখায়।


এখন আসুন আমরা এই ডেটা সেট কোডটি ব্যবহার করি এবং ডেটা সেটে প্রতিটি ভেরিয়েবলের গড় গণনা করি‘গাড়ি’।

প্রোসি মানে ডেটা = শ্যাশেল্প.কার্স মানে সুম ম্যাক্সডেক = 2 রান

নীচের চিত্রটি দুটি দশমিক পর্যন্ত ডেটা সেট করা সমস্ত ভেরিয়েবলের গড় দেখায়।

নির্বাচিত ভেরিয়েবলগুলির গড়

ভার অপশনে নাম সরবরাহ করে আপনি নির্দিষ্ট ভেরিয়েবলের গড় পেতে পারেন। নীচের কোড উল্লেখ করুন।

প্রোসি মানে ডেটা = শ্যাশেল্প.কার্স মানে স্যুম ম্যাক্সডেক = ২ ভার্স অশ্বশক্তি সিলিন্ডার রান

মেন বাই ক্লাস

আপনি সংখ্যার ভেরিয়েবলগুলির মধ্য ব্যবহার করে গ্রুপগুলিতে সংগঠিত করে এটির সন্ধান করতে পারবেনতাদের গ্রুপ করার জন্য কিছু প্যারামিটার।নিম্নলিখিত নমুনা কোড বিবেচনা করুন। বিভিন্ন গাড়ির ‘মেক’ এবং ‘টাইপ’ শ্রেণি দ্বারা শ্রেণিবদ্ধ বিভিন্ন গোষ্ঠীর জন্য অশ্বশক্তির গড় খুঁজে বের করুন।

প্রোসি অর্থ ডেটা = শ্যাশাল্প.কার্স মানে সুম ম্যাক্সডেক = 2 ক্লাস মেক টাইপ করুন হর্স পাওয়ার চালান

নীচের চিত্রটি উপরের কোডটির আউটপুট দেখায়।

আসুন আমরা আমাদের এসএএস প্রোগ্রামিং ব্লগটি চালিয়ে যেতে থাকি এবং অন্য একটি গুরুত্বপূর্ণ পরিসংখ্যানের ধারণাটি দেখে আসি।

আদর্শ চ্যুতি

স্ট্যান্ডার্ড বিচ্যুতি (এসডি) একটি প্রদত্ত ডেটা সেটে থাকা ডেটা কত বৈচিত্র্যযুক্ত তার একটি পরিমাপ। গাণিতিকভাবে, এটি আপনাকে জানায় যে প্রতিটি ডেটা কোনও ডেটার সেটের গড় মানকে কতটা কাছে নির্দেশ করে। যদি স্ট্যান্ডার্ড বিচ্যুতির মান 0 এর কাছাকাছি হয় তবে এটি সূচিত করে যে ডেটা পয়েন্টগুলি ডেটা সেটের গড়ের খুব কাছাকাছি এবং একটি উচ্চমানের বিচ্যুতি নির্দেশ করে যে ডেটা পয়েন্টগুলি বিভিন্ন মানের মধ্যে বিস্তৃত হয়েছে।

এসএএসে, আপনি দুটি পদ্ধতি ব্যবহার করে স্ট্যান্ডার্ড বিচ্যুতির মান গণনা করতে পারেন। তারা হ'ল:

  • প্রকল্পের অর্থ
  • জরিপ

পিআরসি অর্থ ব্যবহার করে স্ট্যান্ডার্ড বিচ্যুতি

আপনি প্র্যাক অর্থ ব্যবহার করে স্ট্যান্ডার্ড বিচ্যুতি পরিমাপ করতে পারেন, আপনাকে এটি চয়ন করতে হবে ঘন্টার প্রোসি পদক্ষেপে বিকল্প। এটি ডেটা সেটে প্রতিটি সংখ্যার ভেরিয়েবলের জন্য স্ট্যান্ডার্ড বিচ্যুতি মানগুলি প্রদর্শন করবে।

বাক্য গঠন:

প্রোসি অর্থ ডেটা = ডেটাসেট এসটিডি

এই নমুনা কোডটি বিবেচনা করুন, আসুন SASHELP লাইব্রেরিতে CARS ডেটা সেট থেকে আর একটি ডেটা সেট CARS1 তৈরি করি। এটি করার জন্য আমরা আমাদের PROC এসকিউএল পদ্ধতিটি ব্যবহার করি। আসুন আমরা গাড়ীর ‘টাইপ’ এবং ‘মেক’ ব্যবহার করে ডেটা গ্রুপ করি এবং এসআরসি বিকল্পের সাহায্যে নির্বাচিত ভেরিয়েবলের জন্য স্ট্যান্ডার্ড বিচ্যুতি গণনা করি পদক্ষেপ।

প্রোসি এসকিউএল নির্বাচন করুন, টাইপ, অশ্বশক্তি, সিলিন্ডার, ওজন হিসাবে টেবিল সিএআরএস 1 তৈরি করুন যেখানে SASHELP.CARS থেকে মেক ইন করুন ('অডি', 'বিএমডাব্লু') রুন প্রোসি অর্থ ডেটা = সিআরএস 1 এসটিডি চালান

উপরের কোডটি নির্বাচিত ভেরিয়েবলগুলির জন্য স্ট্যান্ডার্ড বিচ্যুতি দেবে। নিম্নলিখিত চিত্র আউটপুট প্রদর্শন করে।

প্রোসি সার্ভেইমিয়ানস

এই পদ্ধতিটি স্ট্যান্ডার্ড বিচ্যুতি পরিমাপের জন্য কিছু অগ্রিম বৈশিষ্ট্যগুলির সাথে যেমন শ্রেণীবদ্ধ ভেরিয়েবল এবং বৈকল্পিকের জন্য স্ট্যান্ডার্ড বিচ্যুতি পরিমাপ করার জন্য ব্যবহৃত হয়।

বাক্য গঠন:

প্রোসি জরিমানা বিকল্পসমূহ পরিসংখ্যান-কীওয়ার্ডগুলি ভেরিয়েবল দ্বারা শ্রেণীর ভেরিয়েবলগুলি ভেরিয়েবলগুলি

নীচে ব্যবহৃত প্যারামিটারগুলির বিবরণ দেওয়া হল:

  • দ্বারা পর্যবেক্ষণের গোষ্ঠী তৈরি করতে ব্যবহৃত ভেরিয়েবলগুলি চিহ্নিত করতে ব্যবহৃত হয়।
  • ক্লাস শ্রেণিবদ্ধ ভেরিয়েবলের জন্য ব্যবহৃত ভেরিয়েবলগুলি নির্দেশ করে।
  • কোথায় ভেরিয়েবলগুলি নির্দেশ করে যার জন্য এসডি গণনা করা হবে।

আসুন আমরা এই নমুনা কোডটি দেখে নিই যা ক্লাস প্যারামিটারের ব্যবহারের বর্ণনা করে যা শ্রেণি ভেরিয়েবলের প্রতিটি মানের পরিসংখ্যান তৈরি করে।

প্রোসি সার্ভেইমেন্স ডেটা = CARS1 এসটিডি শ্রেণীর ধরণের বার টাইপ হর্সপাওয়ার ওড আউটপুট পরিসংখ্যান = আয়তক্ষেত্র চালান প্রোসি প্রিন্ট ডেটা = আয়তক্ষেত্র রান

নীচের চিত্রগুলি উপরের কোডটির আউটপুট দেখায়। এটি 95% আস্থার ব্যবধানের জন্য ‘অশ্বশক্তি’ ভেরিয়েবলের ডেটা বিতরণ দেখায়। (আত্মবিশ্বাসের বিরতি বলতে বোঝা যায় এমন মানগুলির একটি ব্যাপ্তি যাতে সংজ্ঞায়িত হয় যে একটি নির্দিষ্ট সম্ভাবনা রয়েছে যা এর মধ্যে একটি প্যারামিটারের মান থাকে))

সুতরাং, এটি আমাদের এসএএস প্রোগ্রামিং ব্লগের শেষে নিয়ে আসে। ব্লগের বিষয়বস্তু নিয়ে কোনও সন্দেহ বা ইস্যু প্রকাশের জন্য, দয়া করে তাদের মন্তব্য বিভাগে রেখে দিন, আমি এগুলি খুব শীঘ্রই সমাধান করব এবং প্রতিক্রিয়া জানাব।

আপনি যদি এসএএস শিখতে চান এবং অ্যানালিটিক্স ডোমেনে ক্যারিয়ার গড়তে চান তবে আমাদের দেখুন যা প্রশিক্ষকের নেতৃত্বাধীন লাইভ প্রশিক্ষণ এবং বাস্তব জীবনের প্রকল্পের অভিজ্ঞতার সাথে আসে। এই প্রশিক্ষণ আপনাকে গভীরতার সাথে এসএএস বুঝতে এবং এসএএস প্রোগ্রামিং ভাষার বিভিন্ন ধারণায় আয়ত্ত করতে সহায়তা করবে।

আমাদের জন্য একটি প্রশ্ন আছে? দয়া করে মন্তব্য বিভাগে এটি উল্লেখ করুন এবং আমরা আপনার কাছে ফিরে আসব।