একটি কন্টিনজেন্সি টেবিল হলো একটি টেবিল যা সারিতে একটি ভেরিয়েবল এবং কলামে অন্য একটি ভেরিয়েবলের ডিস্ট্রিবিউশন দেখায়। এটি দুটি ভেরিয়েবলের মধ্যে কোরিলেশন অধ্যয়ন করতে ব্যবহৃত হয়। এটি একটি মাল্টি-ওয়ে টেবিল যা এমন ডেটাসেট বর্ণনা করে যেখানে প্রতিটি অবজারভেশনöbbয়ের জন্য প্রায়শই বেশ কিছু ভেরিয়েবলের জন্য একটি ক্যাটেগরিতে পড়ে। বেসিক্যালি এটি দুটি বা অধিক ক্যাটেগরিক্যাল ভেরিয়েবলের মধ্যে কাউন্টের ট্যালি। কন্টিনজেন্সি টেবিলকে ক্রসট্যাব বা টু-ওয়ে টেবিলও বলা হয়, যা Статистиকসে বহু ক্যাটেগরিক্যাল ভেরিয়েবলের রিলেশনশিপ সামারি করার জন্য ব্যবহৃত হয়।
কন্টিনজেন্সি কোইফিসিয়েন্ট হলো একটি অ্যাসোসিয়েশন কোইফিসিয়েন্ট যা বলে দুটি ভেরিয়েবল বা ডেটাসেট ইনডিপেন্ডেন্ট কিনা বা ডিপেন্ডেন্ট, এটি পিয়ারসন কোইফিসিয়েন্টও জানানো হয়।
উদাহরণ
নিচের উদাহরণে আমরা আইরিস ফ্লাওয়ার ডেটাসেট নিয়ে Анаলাইসিস করব। এই ডেটাসেটে আইরিসের তিন প্রজাতি (Iris setosa, Iris virginica এবং Iris versicolor) থেকে প্রতিটি ৫০ স্যাম্পল রয়েছে। প্রতিটি স্যাম্পল থেকে চারটি ফিচার মাপা হয়েছে: সেপালের দৈর্ঘ্য ও প্রস্থ এবং পেটালের দৈর্ঘ্য ও প্রস্থ, সেনটিমিটরে। আমরা এই ফিচারগুলোর ওপর কন্টিনজেন্সি মডেল তৈরি করব যা শেষে প্রজাতিগুলো আলাদা করতে কাজে লাগবে।
ডেটাসেট পড়া
উদাহরণ
import numpy as np
import pandas as pd
datainput = pd.read_csv("iris.csv")
print(datainput.head(5))
উপরোক্ত কোড চালালে নিচের ফলাফল পাওয়া যাবে:
SepalLengthCm SepalWidthCm PetalLengthCm PetalWidthCm Species 0 5.1 3.5 1.4 0.2 Iris-setosa 1 4.9 3.0 1.4 0.2 Iris-setosa 2 4.7 3.2 1.3 0.2 Iris-setosa 3 4.6 3.1 1.5 0.2 Iris-setosa 4 5.0 3.6 1.4 0.2 Iris-setosa
ডেটার সাধারণ পরিসংখ্যান
পরবর্তী, আমরা describe() ব্যবহার করে ডেটার সাধারণ পরিসংখ্যান জানব। এতে ডেটা কীভাবে ডিস্ট্রিবিউটেড তা সম্পর্কে মিন এবং বিভিন্ন কোয়ার্টাইল জানা যায়।
উদাহরণ
import numpy as np
import pandas as pd
datainput = pd.read_csv("iris.csv")
print(datainput.describe())
উপরোক্ত কোড চালালে নিচের ফলাফল পাওয়া যাবে:
SepalLengthCm SepalWidthCm PetalLengthCm PetalWidthCm count 150.000000 150.000000 150.000000 150.000000 mean 5.843333 3.054000 3.758667 1.198667 std 0.828066 0.433594 1.764420 0.763161 min 4.300000 2.000000 1.000000 0.100000 25% 5.100000 2.800000 1.600000 0.300000 50% 5.800000 3.000000 4.350000 1.300000 75% 6.400000 3.300000 5.100000 1.800000 max 7.900000 4.400000 6.900000 2.500000
ডেটা টাইপ
পরবর্তী আমরা ডেটাফ্রেমের কলামগুলোর বিভিন্ন ডেটা টাইপ পর্যবেক্ষণ করব।
উদাহরণ
import numpy as np
import pandas as pd
datainput = pd.read_csv("iris.csv")
print(datainput.dtypes)
উপরোক্ত কোড চালালে নিচের ফলাফল পাওয়া যাবে:
SepalLengthCm float64 SepalWidthCm float64 PetalLengthCm float64 PetalWidthCm float64 Species object dtype: object
কন্টিনজেন্সি টেবিল তৈরি
এখন আমরা পেটাল প্রস্থের কলামের জন্য প্রতিটি প্রজাতির কন্টিনজেন্সি টেবিল তৈরি করব। এর জন্য পান্ডাসে থাকা crosstab ফাংশন ব্যবহার করব এবং এই দুটি কলামের নাম ইনপুট হিসেবে দেব।
উদাহরণ
import numpy as np
import pandas as pd
datainput = pd.read_csv("iris.csv")
width_species = pd.crosstab(datainput['PetalWidthCm'], datainput['Species'], margins=False)
print(width_species)
উপরোক্ত কোড চালালে নিচের ফলাফল পাওয়া যাবে:
Species Iris-setosa Iris-versicolor Iris-virginica PetalWidthCm 0.1 6 0 0 0.2 28 0 0 0.3 7 0 0 1.0 0 7 0 1.1 0 3 0 1.2 0 5 0 1.8 0 1 11 1.9 0 0 5 2.0 0 0 6 2.1 0 0 6 2.5 0 0 3
মাল্টি-ভেরিয়েট কন্টিনজেন্সি টেবিল
এই কেসে আমরা দুটির অধিক কলাম ব্যবহার করে কন্টিনজেন্সি টেবিল তৈরি করব। এখানে আমরা পেটাল দৈর্ঘ্য এবং পেটাল প্রস্থ দুটোই প্রতিটি প্রজাতির জন্য ব্যবহার করব।
import numpy as np
import pandas as pd
datainput = pd.read_csv("iris.csv")
length_width_species = pd.crosstab([datainput.PetalLengthCm, datainput.PetalWidthCm], datainput.Species, margins=False)
print(length_width_species)
উপরোক্ত কোড চালালে নিচের ফলাফল পাওয়া যাবে:
Species Iris-setosa Iris-versicolor Iris-virginica
PetalLengthCm PetalWidthCm
1.0 0.2 1 0 0
1.1 0.1 1 0 0
1.2 0.2 2 0 0
1.3 0.2 4 0 0
0.3 2 0 0
... ... ... ... ...
6.4 2.0 0 0 1
6.6 2.1 0 0 1
6.7 2.0 0 0 1
2.2 0 0 1
6.9 2.3 0 0 1