SAS (Statistical Analysis System) প্রোগ্রামিং ভাষায় Character Data এবং Numeric Data উভয়ের জন্য বিভিন্ন ম্যানিপুলেশন টেকনিক রয়েছে। এই টেকনিকগুলো ডেটার উপস্থাপন, পরিবর্তন, এবং বিশ্লেষণে ব্যবহৃত হয়। সেক্ষেত্রে character এবং numeric ডেটা নিয়ে বিভিন্ন ক্রিয়াকলাপ (manipulation) করা হয় যেমন নতুন ভেরিয়েবল তৈরি, ডেটার রূপান্তর, ম্যানিপুলেশন বা বিশ্লেষণ ইত্যাদি।
Character Data Manipulation Techniques
Character Data এমন ডেটা যা অক্ষর (letters), সংখ্যা, স্পেস, এবং অন্যান্য চিহ্নের সমষ্টি হয়ে থাকে। স্যাসে character ডেটার সাথে বিভিন্ন ধরনের ম্যানিপুলেশন করা যায়।
১. LENGTH Function
LENGTH ফাংশন ব্যবহার করে একটি character ভেরিয়েবলের দৈর্ঘ্য (length) বের করা হয়।
উদাহরণ:
data work.example;
input name $;
length_name = length(name); /* length() function to find the length */
datalines;
John
Sara
Alexander
;
run;
proc print data=work.example;
run;
এখানে, length_name ভেরিয়েবলটি name ভেরিয়েবলের দৈর্ঘ্য (character count) রেকর্ড করবে।
২. SUBSTR Function
SUBSTR ফাংশন দিয়ে একটি character স্ট্রিং এর নির্দিষ্ট অংশ বের করা যায়।
উদাহরণ:
data work.example;
input name $;
first_three = substr(name, 1, 3); /* Extract first 3 characters */
datalines;
John
Sara
Alexander
;
run;
proc print data=work.example;
run;
এখানে, substr(name, 1, 3) name থেকে প্রথম তিনটি অক্ষর বের করবে।
৩. UPCASE এবং LOWCASE Functions
UPCASE এবং LOWCASE ফাংশন ব্যবহার করে character ডেটাকে যথাক্রমে বড় হাতের এবং ছোট হাতের অক্ষরে রূপান্তর করা যায়।
উদাহরণ:
data work.example;
input name $;
upper_name = upcase(name); /* Convert to uppercase */
lower_name = lowcase(name); /* Convert to lowercase */
datalines;
John
Sara
Alexander
;
run;
proc print data=work.example;
run;
এখানে, upper_name তে নামের বড় হাতের অক্ষর এবং lower_name তে ছোট হাতের অক্ষর রূপান্তরিত হবে।
৪. TRIM Function
TRIM ফাংশনটি একটি character ভেরিয়েবল থেকে অতিরিক্ত স্পেস (spaces) মুছে ফেলতে ব্যবহৃত হয়।
উদাহরণ:
data work.example;
input name $;
trimmed_name = trim(name); /* Remove trailing spaces */
datalines;
John
Sara
Alexander
;
run;
proc print data=work.example;
run;
এখানে, trim(name) শেষের অতিরিক্ত স্পেসগুলি মুছে ফেলবে।
৫. TRANSLATE Function
TRANSLATE ফাংশন ব্যবহার করে একটি character স্ট্রিং-এর অক্ষর পরিবর্তন করা যায়।
উদাহরণ:
data work.example;
input name $;
new_name = translate(name, "X", "a"); /* Replace 'a' with 'X' */
datalines;
John
Sara
Alexander
;
run;
proc print data=work.example;
run;
এখানে, translate(name, "X", "a") সমস্ত a অক্ষরকে X দিয়ে প্রতিস্থাপন করবে।
Numeric Data Manipulation Techniques
Numeric Data হলো এমন ডেটা যা কেবলমাত্র সংখ্যা ধারণ করে এবং গণনা বা গাণিতিক অপারেশন করতে ব্যবহৃত হয়। SAS-এ numeric ডেটা ম্যানিপুলেশনের জন্য বিভিন্ন ফাংশন এবং টেকনিক ব্যবহৃত হয়।
১. SUM Function
SUM ফাংশন দিয়ে একটি ভেরিয়েবলের মোট যোগফল (sum) বের করা হয়।
উদাহরণ:
data work.example;
input sales;
total_sales + sales; /* Calculate total sales */
datalines;
100
200
300
;
run;
proc print data=work.example;
run;
এখানে, total_sales + sales; প্রতিটি রেকর্ডে sales ভেরিয়েবলের মান যোগ করবে এবং total_sales এর যোগফল তৈরি করবে।
২. MEAN Function
MEAN ফাংশন দিয়ে এক বা একাধিক numeric ভেরিয়েবলের গড় (mean) বের করা যায়।
উদাহরণ:
data work.example;
input score1 score2 score3;
avg_score = mean(score1, score2, score3); /* Calculate the mean */
datalines;
80 90 85
70 85 78
90 88 92
;
run;
proc print data=work.example;
run;
এখানে, mean(score1, score2, score3) তিনটি স্কোরের গড় বের করবে।
৩. ROUND Function
ROUND ফাংশন ব্যবহার করে একটি numeric ভেরিয়েবলকে নির্দিষ্ট সংখ্যার ঘূর্ণন (rounding) করা যায়।
উদাহরণ:
data work.example;
input price;
rounded_price = round(price, 5); /* Round price to nearest multiple of 5 */
datalines;
23
17
42
;
run;
proc print data=work.example;
run;
এখানে, round(price, 5) প্রতিটি price মানকে ৫ এর গুণে ঘূর্ণন করবে।
৪. INT Function
INT ফাংশন দিয়ে একটি সংখ্যা থেকে দশমিক স্থান বাদ দেওয়া হয় এবং শুধু পূর্ণসংখ্যা (integer) পাওয়া যায়।
উদাহরণ:
data work.example;
input value;
int_value = int(value); /* Get the integer part */
datalines;
23.45
78.99
45.33
;
run;
proc print data=work.example;
run;
এখানে, int(value) প্রতিটি value থেকে দশমিক অংশ মুছে পূর্ণসংখ্যা তৈরি করবে।
৫. ABS Function
ABS ফাংশনটি একটি সংখ্যার অভ্যন্তরীণ মান বের করতে ব্যবহৃত হয়, অর্থাৎ এটি কোন সংখ্যার নেতিবাচক মান থেকে ইতিবাচক মান তৈরি করে।
উদাহরণ:
data work.example;
input value;
absolute_value = abs(value); /* Get the absolute value */
datalines;
-25
-100
50
;
run;
proc print data=work.example;
run;
এখানে, abs(value) নেতিবাচক মানগুলিকে ইতিবাচক মানে রূপান্তর করবে।
সারাংশ
SAS-এ Character এবং Numeric Data ম্যানিপুলেশনের জন্য বিভিন্ন শক্তিশালী টেকনিক ও ফাংশন রয়েছে। Character Data এর জন্য length(), substr(), upcase(), trim() এবং translate() ফাংশন ব্যবহৃত হয়। অপরদিকে, Numeric Data এর জন্য sum(), mean(), round(), int(), এবং abs() ফাংশনগুলি ব্যবহার করে ডেটার ওপর গাণিতিক বা গাণিতিকভাবে সংশোধন করা যায়। এই ম্যানিপুলেশন টেকনিকগুলির মাধ্যমে আপনি ডেটা বিশ্লেষণ, ম্যানিপুলেশন এবং রিপোর্ট তৈরির কাজ সহজেই করতে পারবেন।
Read more