SAS-এ Array এবং Hash Table দুটি শক্তিশালী ডেটা হ্যান্ডলিং টুল, যা ডেটা ম্যানিপুলেশন এবং প্রক্রিয়া করার জন্য ব্যবহৃত হয়। Array ব্যবহার করে আপনি একাধিক ভেরিয়েবলের মান একত্রে পরিচালনা করতে পারেন, আর Hash Table ব্যবহার করে ডেটা অনুসন্ধান এবং অনুসরণ আরও দ্রুত এবং কার্যকরীভাবে করা যায়।
১. Array ব্যবহার
Array হল একটি ডেটা স্ট্রাকচার, যেখানে একাধিক ভেরিয়েবল বা মান সংরক্ষিত থাকে। এটি মূলত একই ধরনের ডেটা একত্রিত করার জন্য ব্যবহৃত হয়। SAS-এ array ডেফিনিশন করতে ARRAY স্টেটমেন্ট ব্যবহার করা হয়, এবং তারপর একটি নামের মাধ্যমে এই মানগুলোকে অ্যাক্সেস করা হয়।
Array এর গঠন
ARRAY array_name {size} variable_list;
- array_name: অ্যারের নাম।
- size: অ্যারের আকার, অর্থাৎ এতে কতটি ভেরিয়েবল বা মান থাকবে।
- variable_list: যে ভেরিয়েবলগুলো অ্যারের মধ্যে রাখা হবে।
উদাহরণ: Array ব্যবহার
data example;
input a b c d e;
array scores {5} a b c d e;
/* অ্যারে ব্যবহার করে মোট স্কোর বের করা */
total_score = 0;
do i = 1 to 5;
total_score = total_score + scores{i};
end;
datalines;
10 20 30 40 50
15 25 35 45 55
;
run;
proc print data=example;
run;
এখানে:
scoresনামের একটি অ্যারে তৈরি করা হয়েছে, যা ৫টি ভেরিয়েবলকে ধারণ করে (a, b, c, d, e)।do i = 1 to 5;লুপের মাধ্যমে অ্যারের সব মান যোগ করেtotal_scoreহিসাব করা হচ্ছে।
Array এর আরও উদাহরণ
আপনি অ্যারের মাধ্যমে বিভিন্ন গাণিতিক অপারেশন বা ফিল্টারিংও করতে পারেন:
data example;
input x y z;
array nums{3} x y z;
/* যদি x, y, বা z এর মান 50 এর বেশি হয় তবে 100 তে সেট করা হবে */
do i = 1 to 3;
if nums{i} > 50 then nums{i} = 100;
end;
datalines;
30 60 20
70 40 90
;
run;
proc print data=example;
run;
এখানে:
numsঅ্যারের মধ্যে ৩টি ভেরিয়েবল (x, y, z) রয়েছে এবংdoলুপ ব্যবহার করে তাদের মান পরিবর্তন করা হচ্ছে যদি সেগুলির মান ৫০ এর বেশি হয়।
২. Hash Table ব্যবহার
Hash Table হলো একটি শক্তিশালী ডেটা স্ট্রাকচার যা ডেটার দ্রুত অনুসন্ধান, যোগ, মুছা এবং আপডেটের কাজগুলোকে সহজ এবং কার্যকরী করে। এটি মূলত একটি key-value pair ভিত্তিক ডেটা স্টোরেজ যেখানে key একটি অনন্য আইডেন্টিফায়ার হিসেবে কাজ করে এবং value সেই key-এর সাথে সম্পর্কিত ডেটা। SAS-এ Hash Table ব্যবহারের জন্য DECLARE স্টেটমেন্ট এবং ADD/FIND মেথড ব্যবহার করা হয়।
Hash Table এর গঠন
declare hash hash_name();
- hash_name: হ্যাশ টেবিলের নাম।
উদাহরণ: Hash Table ব্যবহার
data example;
input id $ name $;
declare hash h();
h.defineKey('id');
h.defineData('name');
h.defineDone();
/* হ্যাশ টেবিলের মধ্যে ডেটা যোগ করা */
h.add();
/* হ্যাশ টেবিল থেকে ডেটা খোঁজা */
if h.find() = 0 then
put name=;
else
put 'Not Found';
datalines;
001 John
002 Sara
003 Mike
;
run;
এখানে:
declare hash h();হ্যাশ টেবিল তৈরি করে।h.defineKey('id');দ্বারাidভেরিয়েবলটিকে key হিসেবে নির্ধারণ করা হয়েছে।h.defineData('name');দ্বারাnameভেরিয়েবলটিকে value হিসেবে নির্ধারণ করা হয়েছে।h.add();হ্যাশ টেবিলে নতুন ডেটা যোগ করেছে এবংh.find()দিয়ে হ্যাশ টেবিল থেকে ডেটা খোঁজা হয়েছে।
Hash Table এর আরও উদাহরণ
আপনি হ্যাশ টেবিলের মাধ্যমে ডেটার আপডেট বা মুছে ফেলা ও দ্রুত অনুসন্ধান করতে পারেন:
data example;
input id $ name $;
declare hash h();
h.defineKey('id');
h.defineData('name');
h.defineDone();
/* হ্যাশ টেবিলে ডেটা যোগ */
h.add();
if h.find() = 0 then do;
name = 'Updated Name'; /* ডেটা আপডেট করা হচ্ছে */
h.replace(); /* নতুন মান সংরক্ষণ */
end;
datalines;
001 John
002 Sara
;
run;
proc print data=example;
run;
এখানে:
h.replace()ব্যবহার করে হ্যাশ টেবিলে ডেটা আপডেট করা হয়েছে।
Array এবং Hash Table এর তুলনা
| বৈশিষ্ট্য | Array | Hash Table |
|---|---|---|
| ডেটার গঠন | এক ধরনের ডেটা সংরক্ষণ (যেমন, সমস্ত সংখ্যাই বা ক্যারেক্টার) | key-value pair ভিত্তিক গঠন |
| অনুসন্ধান | লুপ ব্যবহার করে অনুসন্ধান করতে হয় | খুব দ্রুত ডেটা অনুসন্ধান |
| নমনীয়তা | একে শুধুমাত্র ডেটা প্রক্রিয়া করার জন্য ব্যবহার করা হয় | খুবই নমনীয়, দ্রুত অনুসন্ধান ও আপডেট সুবিধা |
| ব্যবহার | একাধিক ভেরিয়েবলের মান একত্রে ম্যানিপুলেট করা | বড় ডেটাসেটে দ্রুত মান খোঁজা বা আপডেট করা |
সারাংশ
SAS-এ Array এবং Hash Table হল দুটি অত্যন্ত শক্তিশালী ডেটা হ্যান্ডলিং টুল:
- Array ব্যবহার করে আপনি একাধিক ভেরিয়েবলের মান একত্রে ম্যানিপুলেট করতে পারেন এবং তাদের উপর গাণিতিক অপারেশন করতে পারেন।
- Hash Table ব্যবহার করে আপনি key-value pair ভিত্তিক ডেটা দ্রুত অনুসন্ধান, আপডেট এবং পরিচালনা করতে পারেন।
এই দুটি টুল আপনার ডেটা ম্যানিপুলেশন এবং বিশ্লেষণ করার ক্ষমতাকে অনেক গুণ বৃদ্ধি করতে সাহায্য করে।
Read more