R-এ টেক্সট ডেটা কীভাবে বিশ্লেষণ করবেন: স্ট্রিং ম্যানিপুলেশনের বেসিক

R E Teksata Deta Kibhabe Bislesana Karabena Strim Myanipulesanera Besika



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

উদাহরণ 1: R-এ Grep() ফাংশন ব্যবহার করে স্ট্রিং থেকে প্যাটার্নের অবস্থান পান

স্ট্রিং থেকে নির্দিষ্ট প্যাটার্নের অবস্থান বের করতে, R-এর grep() ফাংশন ব্যবহার করা হয়।

grep('i+', c('fix', 'split', 'corn n', 'paint'), perl=TRUE, value=FALSE)

এখানে, আমরা grep() ফাংশন নিযুক্ত করি যেখানে '+i' প্যাটার্নটি স্ট্রিংগুলির ভেক্টরের মধ্যে মিলিত হওয়ার জন্য একটি আর্গুমেন্ট হিসাবে নির্দিষ্ট করা হয়েছে। আমরা অক্ষর ভেক্টর সেট করি যার মধ্যে চারটি স্ট্রিং রয়েছে। এর পরে, আমরা সত্য মানের সাথে 'পার্ল' আর্গুমেন্ট সেট করি যা নির্দেশ করে যে R একটি পার্ল সামঞ্জস্যপূর্ণ নিয়মিত এক্সপ্রেশন লাইব্রেরি ব্যবহার করে এবং 'মান' প্যারামিটারটি 'ফলস' মান দিয়ে নির্দিষ্ট করা হয় যা উপাদানগুলির সূচকগুলি পুনরুদ্ধার করতে ব্যবহৃত হয় ভেক্টরে যা প্যাটার্নের সাথে মেলে।







ভেক্টর অক্ষরের প্রতিটি স্ট্রিং থেকে '+i' প্যাটার্ন অবস্থান নিম্নলিখিত আউটপুটে প্রদর্শিত হয়:





উদাহরণ 2: R-এ Gregexpr() ফাংশন ব্যবহার করে প্যাটার্ন মিলান

এর পরে, আমরা gregexpr() ফাংশন ব্যবহার করে R-এ নির্দিষ্ট স্ট্রিংয়ের দৈর্ঘ্য সহ সূচকের অবস্থান পুনরুদ্ধার করি।





char_vec <- c('PROGRAMMINGLANGUAGE','RSCRIPT')
gregexpr('GRAMM', char_vec, useBytes = TRUE)

এখানে, আমরা 'char_vect' ভেরিয়েবল সেট করেছি যেখানে স্ট্রিংগুলি বিভিন্ন অক্ষর সহ দেওয়া আছে। এর পরে, আমরা gregexpr() ফাংশনটি সংজ্ঞায়িত করি যা 'char_vec' এ সংরক্ষিত স্ট্রিংগুলির সাথে মিলিত হতে 'GRAMM' স্ট্রিং প্যাটার্ন নেয়। তারপর, আমরা “TRUE” মান দিয়ে useBytes প্যারামিটার সেট করি। এই প্যারামিটারটি নির্দেশ করে যে মিলটি অক্ষর দ্বারা অক্ষরের পরিবর্তে বাইট-বাই-বাইট অর্জন করা উচিত।

নিম্নলিখিত আউটপুট যা gregexpr() ফাংশন থেকে পুনরুদ্ধার করা হয়েছে তা উভয় ভেক্টর স্ট্রিংগুলির সূচক এবং দৈর্ঘ্য উপস্থাপন করে:



উদাহরণ 3: R-এ Nchar() ফাংশন ব্যবহার করে স্ট্রিং-এ মোট অক্ষর গণনা করুন

nchar() পদ্ধতি যা আমরা নিম্নলিখিতগুলিতে প্রয়োগ করি তা আমাদের স্ট্রিংটিতে কতগুলি অক্ষর রয়েছে তা নির্ধারণ করতে দেয়:

Res <- nchar('প্রতিটি অক্ষর গণনা করুন')
মুদ্রণ

এখানে, আমরা nchar() পদ্ধতিকে বলি যা 'Res' ভেরিয়েবলের মধ্যে সেট করা আছে। nchar() পদ্ধতিতে অক্ষরের দীর্ঘ স্ট্রিং প্রদান করা হয় যা nchar() পদ্ধতি দ্বারা গণনা করা হয় এবং নির্দিষ্ট স্ট্রিং-এ কাউন্টার অক্ষরের সংখ্যা প্রদান করে। তারপর, আমরা nchar() পদ্ধতির ফলাফল দেখতে print() পদ্ধতিতে 'Res' ভেরিয়েবল পাস করি।

ফলাফলটি নিম্নলিখিত আউটপুটে প্রাপ্ত হয়েছে যা দেখায় যে নির্দিষ্ট স্ট্রিংটিতে 20টি অক্ষর রয়েছে:

উদাহরণ 4: R-এ Substring() ফাংশন ব্যবহার করে স্ট্রিং থেকে সাবস্ট্রিং বের করুন

স্ট্রিং থেকে নির্দিষ্ট সাবস্ট্রিং বের করতে আমরা 'স্টার্ট' এবং 'স্টপ' আর্গুমেন্ট সহ সাবস্ট্রিং() পদ্ধতি ব্যবহার করি।

str <- সাবস্ট্রিং('MORNING', 2, 4)
মুদ্রণ(str)

এখানে, আমাদের একটি 'str' ​​ভেরিয়েবল আছে যেখানে substring() মেথড কল করা হয়েছে। সাবস্ট্রিং() পদ্ধতিটি প্রথম আর্গুমেন্ট হিসেবে 'MORNING' স্ট্রিং এবং দ্বিতীয় আর্গুমেন্ট হিসেবে '2' এর মান নেয় যা নির্দেশ করে যে স্ট্রিং থেকে দ্বিতীয় অক্ষরটি বের করতে হবে এবং '4' আর্গুমেন্টের মান নির্দেশ করে যে চতুর্থ অক্ষরটি বের করতে হবে। substring() পদ্ধতি নির্দিষ্ট অবস্থানের মধ্যে স্ট্রিং থেকে অক্ষর বের করে।

নিম্নলিখিত আউটপুটটি নিষ্কাশিত সাবস্ট্রিং প্রদর্শন করে যা স্ট্রিংয়ের দ্বিতীয় এবং চতুর্থ অবস্থানের মধ্যে থাকে:

উদাহরণ 5: R-এ Paste() ফাংশন ব্যবহার করে স্ট্রিংকে সংযুক্ত করুন

R-এ পেস্ট() ফাংশনটি স্ট্রিং ম্যানিপুলেশনের জন্যও ব্যবহৃত হয় যা নির্দিষ্ট স্ট্রিংগুলিকে ডিলিমিটারকে আলাদা করে সংযুক্ত করে।

msg1 <- 'সামগ্রী'
msg2 <- 'লেখা'

পেস্ট (msg1, msg2)

এখানে, আমরা যথাক্রমে 'msg1' এবং 'msg2' ভেরিয়েবলের স্ট্রিংগুলি নির্দিষ্ট করি। তারপর, আমরা প্রদত্ত স্ট্রিংটিকে একটি একক স্ট্রিংয়ে সংযুক্ত করতে R-এর পেস্ট() পদ্ধতি ব্যবহার করি। পেস্ট() পদ্ধতিটি স্ট্রিং ভেরিয়েবলকে একটি আর্গুমেন্ট হিসাবে নেয় এবং স্ট্রিংগুলির মধ্যে ডিফল্ট স্থান সহ একক স্ট্রিং প্রদান করে।

paste() পদ্ধতিটি কার্যকর করার পরে, আউটপুট এটিতে স্থান সহ একক স্ট্রিংকে উপস্থাপন করে।

উদাহরণ 6: R-এ Substring() ফাংশন ব্যবহার করে স্ট্রিং পরিবর্তন করুন

উপরন্তু, আমরা নিম্নোক্ত স্ক্রিপ্ট ব্যবহার করে substring() ফাংশন ব্যবহার করে স্ট্রিং-এ সাবস্ট্রিং বা যেকোনো অক্ষর যোগ করে স্ট্রিং আপডেট করতে পারি:

str1 <- 'হিরোস'
সাবস্ট্রিং(str1, 5, 6) <- 'ic'

cat('    পরিবর্তিত স্ট্রিং:', str1)

আমরা 'str1' ভেরিয়েবলের মধ্যে 'Heroes' স্ট্রিং সেট করেছি। তারপর, আমরা সাবস্ট্রিং() পদ্ধতিটি স্থাপন করি যেখানে সাবস্ট্রিং এর 'স্টার্ট' এবং 'স্টপ' সূচক মানগুলির সাথে 'str1' নির্দিষ্ট করা আছে। সাবস্ট্রিং() পদ্ধতিটি 'iz' সাবস্ট্রিং এর সাথে বরাদ্দ করা হয় যা প্রদত্ত স্ট্রিংটির জন্য ফাংশনের মধ্যে নির্দিষ্ট করা অবস্থানে স্থাপন করা হয়। এর পরে, আমরা R-এর cat() ফাংশন ব্যবহার করি যা আপডেট করা স্ট্রিং মানকে উপস্থাপন করে।

যে আউটপুটটি স্ট্রিংটি প্রদর্শন করে সেটি সাবস্ট্রিং () পদ্ধতি ব্যবহার করে নতুনটির সাথে আপডেট করা হয়:

উদাহরণ 7: R-এ Format() ফাংশন ব্যবহার করে স্ট্রিং ফর্ম্যাট করুন

যাইহোক, R-এ স্ট্রিং ম্যানিপুলেশন অপারেশনে সেই অনুযায়ী স্ট্রিং ফর্ম্যাট করাও অন্তর্ভুক্ত। এর জন্য, আমরা ফর্ম্যাট() ফাংশনটি ব্যবহার করি যেখানে স্ট্রিংটি সারিবদ্ধ করা যায় এবং নির্দিষ্ট স্ট্রিংয়ের প্রস্থ নির্ধারণ করা যায়।

placement1 <- বিন্যাস('প্রোগ্রাম', প্রস্থ = 10, জাস্টিফাই = 'l')
placement2 <- বিন্যাস('প্রোগ্রাম', প্রস্থ = 10, জাস্টিফাই = 'r')
placement3 <- বিন্যাস('প্রোগ্রাম', প্রস্থ = 10, জাস্টিফাই = 'c')

মুদ্রণ(স্থাপন1)
মুদ্রণ(স্থাপন2)
মুদ্রণ(স্থাপন3)

এখানে, আমরা 'placement1' ভেরিয়েবল সেট করেছি যা format() মেথড দিয়ে দেওয়া হয়েছে। আমরা ফরম্যাট() পদ্ধতিতে ফরম্যাট করার জন্য 'প্রোগ্রাম' স্ট্রিং পাস করি। প্রস্থ সেট করা হয়েছে, এবং স্ট্রিং এর সারিবদ্ধকরণ বাম দিকে সেট করা হয়েছে 'জাস্টিফাই' আর্গুমেন্ট ব্যবহার করে। একইভাবে, আমরা আরও দুটি ভেরিয়েবল তৈরি করি, “placement2” এবং “placement2”, এবং সেই অনুযায়ী প্রদত্ত স্ট্রিং ফরম্যাট করতে format() পদ্ধতি প্রয়োগ করি।

আউটপুট বাম, ডান এবং কেন্দ্রের প্রান্তিককরণ সহ নিম্নলিখিত চিত্রে একই স্ট্রিংয়ের জন্য তিনটি ফর্ম্যাটিং শৈলী প্রদর্শন করে:

উদাহরণ 8: R-এ স্ট্রিংকে লোয়ার এবং আপার কেসে রূপান্তর করুন

উপরন্তু, আমরা নিম্নোক্তভাবে tolower() এবং toupper() ফাংশন ব্যবহার করে স্ট্রিংকে ছোট হাতের এবং বড় হাতের অক্ষরে রূপান্তর করতে পারি:

s1 <- 'গুড ফুড ভালো জীবন'
ফলাফল1 <- tolower(s1)

মুদ্রণ (ফলাফল1)

s2 <- 'আর প্রোগ্রামিং ভাষা '
ফলাফল2 <- টপার(s2)

প্রিন্ট (ফলাফল2)

এখানে, আমরা স্ট্রিং প্রদান করি যাতে বড় এবং ছোট হাতের অক্ষর রয়েছে। এর পরে, স্ট্রিংটি 's1' ভেরিয়েবলে রাখা হয়। তারপর, আমরা tolower() মেথডকে কল করি এবং স্ট্রিং-এর ভিতরের সমস্ত অক্ষরকে ছোট হাতের অক্ষরে রূপান্তর করতে এর ভিতরে “s1” স্ট্রিং পাস করি। তারপর, আমরা tolower() পদ্ধতির ফলাফল প্রিন্ট করি যা “result1” ভেরিয়েবলে সংরক্ষিত আছে। এর পরে, আমরা 's2' ভেরিয়েবলে আরেকটি স্ট্রিং সেট করি যেখানে ছোট হাতের অক্ষর রয়েছে। বিদ্যমান স্ট্রিংটিকে বড় হাতের অক্ষরে রূপান্তর করতে আমরা এই 's2' স্ট্রিংটিতে toupper() পদ্ধতি প্রয়োগ করি।

আউটপুট নিম্নলিখিত ছবিতে নির্দিষ্ট ক্ষেত্রে উভয় স্ট্রিং প্রদর্শন করে:

উপসংহার

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