কোরিলেশন
এ পর্বে আমরা দেখবো কীভাবে R-এ কোরিলেশন গণনা করা যায় এবং সেটা কীভাবে গ্রাফিকালি উপস্থাপন করা যায়। R-এ কোরিলেশন গণনা করার জন্য কয়েকটি প্যাকেজ ব্যবহার করা যায়। base R এ কোরিলেশন গণনা করতে আমাদের cor কমান্ডটি ব্যবহার করতে হবে।
উদাহরণস্বরূপ আমরা mtcars ড্যাটাটি ব্যবহার করতে পারি। ড্যাটাটি লোড করে নেই প্রথমে এবং সেটাতে কী কী ভ্যারিয়েবল রয়েছে সেটা দেখতে str কমান্ডটি ব্যবহার করতে পারি।
# Simple Pearson Correlation: Continuous data data(mtcars) str(mtcars)
str কমান্ডটি থেকে আমরা এরকম একটা আউটপুট পাবো।
> str(mtcars) 'data.frame': 32 obs. of 11 variables: $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ... $ cyl : num 6 6 4 6 8 6 8 4 4 6 ... $ disp: num 160 160 108 258 360 ... $ hp : num 110 110 93 110 175 105 245 62 95 123 ... $ drat: num 3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ... $ wt : num 2.62 2.88 2.32 3.21 3.44 ... $ qsec: num 16.5 17 18.6 19.4 17 ... $ vs : num 0 0 1 1 0 1 0 1 1 1 ... $ am : num 1 1 1 0 0 0 0 0 0 0 ... $ gear: num 4 4 4 3 3 3 3 4 4 4 ... $ carb: num 4 4 1 1 2 1 4 2 2 4 ...
এই ভ্যারিয়েবলগুলো দিয়ে একটি কোরিলেশন ম্যাট্রিক্স গণনা করে নিতে পারি,
cor(mtcars, method="pearson")
আউটপুট ম্যাট্রিক্সটা বেশ বড় হয়ে যাওয়াতে আমরা দেখার সুবিধার জন্য কয়েকটি ভ্যারিয়েবল নিয়ে আলাদা একটা ড্যাটাফ্রেম তৈরি করে নেই।
# To reduce the table size, select only variables you need mtcarsnew cor(mtcarsnew, method="kendall")
এখানে p-ভ্যালুগুলো না দেখা যায় না। এতে করে কোন কোরিলেশন সিগনিফিক্যান্ট কিনা সেটা বোঝার উপায় নেই। এটা দেখতে আমরা ltm প্যাকেজের rcor.test কমান্ডটি ব্যবহার করতে পারি।
# To see the p-values, use ltm package # install.packages("ltm", dependencies = TRUE) library(ltm) rcor.test(mtcarsnew, method="pearson")
mtcars.mpg mtcars.cyl mtcars.disp mtcars.hp mtcars.drat mtcars.mpg ***** -0.852 -0.848 -0.776 0.681 mtcars.cyl <0.001 ***** 0.902 0.832 -0.700 mtcars.disp <0.001 <0.001 ***** 0.791 -0.710 mtcars.hp <0.001 <0.001 <0.001 ***** -0.449 mtcars.drat <0.001 <0.001 <0.001 0.010 *****
আউটপুটে লোয়ার ডায়াগনালে p-ভ্যালুগুলো এবং আপার ডায়াগনালে কোরিলেশন দেখাবে।
কোরেলিশেন ভ্যালুগুলো প্লট করে দেখাতে গেলেও কয়েকটি প্যাকেজের সাহায্য নেয়া যায়। আমি এখানে corrplot প্যাকেজটা উদাহরণ হিসেবে দেখাবো।
# Corrplot package # install.packages("corrplot", dependencies = TRUE) cormatrix library("corrplot") corrplot(cormatrix, method = "circle")
এখানে প্রথমে আমরা cormatrix নামে অবজেক্ট তৈরি করছি যেখানে কোরিলেশন ম্যাট্রিক্সটা থাকবে। সেটাকে প্লট করতে আমরা corrplot কমান্ডটি ব্যবহার করলে এরকম একটা প্লট পাবো আমরা।
এখানে method = square লিখলে প্লটটা এরকম দেখাবে
এখানে method = pie লিখলে প্লটটা এরকম দেখাবে
এইরকম আরো কিছু উদাহরণ দেখতে এ পেইজটি ভিজিট করুন।