SAS-এ IF-THEN/ELSE স্টেটমেন্টগুলো ব্যবহার করে আপনি শর্তাধীন লজিক (conditional logic) তৈরি করতে পারেন, যা ডেটা বিশ্লেষণ এবং ম্যানিপুলেশনে অত্যন্ত গুরুত্বপূর্ণ। এই স্টেটমেন্টগুলির মাধ্যমে আপনি নির্দিষ্ট শর্ত বা পরিস্থিতির ভিত্তিতে কোনো কার্যকলাপ সম্পাদন করতে পারেন। IF-THEN এবং ELSE স্টেটমেন্টগুলো সাধারণত ডেটা ফিল্টারিং, ডেটা ম্যানিপুলেশন এবং লজিক্যাল সিদ্ধান্ত গ্রহণের জন্য ব্যবহৃত হয়।
IF-THEN/ELSE লজিকের মৌলিক গঠন
SAS-এ IF-THEN/ELSE স্টেটমেন্টের সাধারণ গঠন হলো:
IF condition THEN action;
ELSE action;
এখানে:
- condition: এটি শর্ত যা পরীক্ষা করা হবে।
- action: যদি শর্তটি সত্য হয়, তাহলে যে কাজটি করা হবে।
- ELSE: যদি শর্তটি মিথ্যা হয়, তাহলে অন্য কাজটি করা হবে।
উদাহরণ ১: সাধারণ IF-THEN/ELSE লজিক
data salary_check;
input name $ salary;
if salary > 50000 then bonus = salary * 0.10;
else bonus = salary * 0.05;
datalines;
John 55000
Sara 45000
Mike 60000
;
run;
proc print data=salary_check;
run;
এখানে:
- যদি salary 50,000 এর বেশি হয়, তবে
bonusহবে স্যালারির ১০%। - অন্যথায়, salary 50,000 এর কম হলে,
bonusহবে স্যালারির ৫%।
উদাহরণ ২: Multiple Conditions with IF-THEN/ELSE
যদি একাধিক শর্ত পরীক্ষা করতে চান, তবে আপনি ELSE IF ব্যবহার করতে পারেন।
data grade_check;
input name $ score;
if score >= 90 then grade = 'A';
else if score >= 80 then grade = 'B';
else if score >= 70 then grade = 'C';
else grade = 'D';
datalines;
John 85
Sara 92
Mike 75
Tom 65
;
run;
proc print data=grade_check;
run;
এখানে:
- score 90 বা তার বেশি হলে, গ্রেড হবে 'A'।
- score 80 থেকে 89 এর মধ্যে হলে, গ্রেড হবে 'B'।
- score 70 থেকে 79 এর মধ্যে হলে, গ্রেড হবে 'C'।
- অন্যথায়, গ্রেড হবে 'D'।
উদাহরণ ৩: ব্যবহারিক শর্ত এবং লজিক্যাল অপারেটর
SAS-এ AND এবং OR অপারেটর ব্যবহার করে আপনি একাধিক শর্ত পরীক্ষা করতে পারেন। উদাহরণস্বরূপ, একটি ডেটাসেটে যদি একাধিক শর্ত পূর্ণ হতে হয়, তবে AND অপারেটর এবং যদি যেকোনো একটি শর্ত পূর্ণ হয়, তবে OR অপারেটর ব্যবহার করা হয়।
AND অপারেটর উদাহরণ:
data employee_bonus;
input name $ age years_of_service;
if age > 30 and years_of_service > 5 then bonus = 0.10;
else bonus = 0.05;
datalines;
John 35 6
Sara 28 3
Mike 40 10
;
run;
proc print data=employee_bonus;
run;
এখানে:
- AND অপারেটর ব্যবহার করা হয়েছে, যাতে age ৩০ এর বেশি এবং years_of_service ৫ বছরের বেশি হলে বোনাস ১০% হবে। অন্যথায়, বোনাস হবে ৫%।
OR অপারেটর উদাহরণ:
data employee_bonus;
input name $ age years_of_service;
if age > 30 or years_of_service > 5 then bonus = 0.10;
else bonus = 0.05;
datalines;
John 35 6
Sara 28 3
Mike 40 10
;
run;
proc print data=employee_bonus;
run;
এখানে:
- OR অপারেটর ব্যবহার করা হয়েছে, যাতে যদি age ৩০ এর বেশি হয় অথবা years_of_service ৫ বছরের বেশি হয়, তবে বোনাস ১০% হবে। অন্যথায়, বোনাস হবে ৫%।
উদাহরণ ৪: Missing Values (মিসিং ভ্যালু) চেক করা
SAS-এ IF-THEN/ELSE স্টেটমেন্ট ব্যবহার করে আপনি মিসিং ভ্যালু (missing value) চেকও করতে পারেন। মিসিং ভ্যালু যাচাই করতে আপনি SAS-এর . (ডট) ব্যবহার করতে পারেন।
data employee_data;
input name $ age salary;
if age = . then put 'ERROR: Age is missing for ' name;
if salary = . then put 'ERROR: Salary is missing for ' name;
datalines;
John 35 50000
Sara . 45000
Mike 40 .
;
run;
এখানে:
- যদি
ageবাsalaryফাঁকা থাকে, তাহলে ত্রুটি বার্তা প্রিন্ট হবে।
সারাংশ
SAS-এ IF-THEN/ELSE স্টেটমেন্টগুলি ডেটা ম্যানিপুলেশন এবং বিশ্লেষণে শর্তাধীন লজিক তৈরি করার জন্য ব্যবহৃত হয়। এই স্টেটমেন্টগুলি ব্যবহার করে আপনি শর্ত পরীক্ষা করে নির্দিষ্ট কাজ সম্পাদন করতে পারেন। আপনি একাধিক শর্ত যুক্ত করতে ELSE IF, AND, এবং OR অপারেটর ব্যবহার করতে পারেন। এটি ডেটা ফিল্টারিং, ডেটা ম্যানিপুলেশন এবং লজিক্যাল সিদ্ধান্ত নেওয়ার জন্য অত্যন্ত কার্যকরী।
Read more