প্রয়োজনীয় প্যাকেজটি লোড করুন।
library(ggplot2)
library(MASS)
গামা বিতরণে লাগানো 10,000 নম্বর উত্পন্ন করুন।
x <- round(rgamma(100000,shape = 2,rate = 0.2),1)
x <- x[which(x>0)]
সম্ভাব্যতার ঘনত্বের ফাংশনটি আঁকুন, ধারণা করা হয় আমরা কোন ডিস্ট্রিবিউশন x ফিট করে we
t1 <- as.data.frame(table(x))
names(t1) <- c("x","y")
t1 <- transform(t1,x=as.numeric(as.character(x)))
t1$y <- t1$y/sum(t1[,2])
ggplot() +
geom_point(data = t1,aes(x = x,y = y)) +
theme_classic()
গ্রাফ থেকে, আমরা শিখতে পারি যে এক্স এর বিতরণটি গামা বিতরণের মতো, সুতরাং আমরা গামার বিতরণের আকার এবং হারের পরামিতিগুলি পেতে fitdistr()
প্যাকেজটিতে ব্যবহার করি MASS
।
fitdistr(x,"gamma")
## output
## shape rate
## 2.0108224880 0.2011198260
## (0.0083543575) (0.0009483429)
একই প্লটে আসল পয়েন্ট (কালো বিন্দু) এবং লাগানো গ্রাফ (লাল রেখা) আঁকুন এবং এখানে প্রশ্নটি রয়েছে, দয়া করে প্রথমে প্লটটি দেখুন।
ggplot() +
geom_point(data = t1,aes(x = x,y = y)) +
geom_line(aes(x=t1[,1],y=dgamma(t1[,1],2,0.2)),color="red") +
theme_classic()
আমার দুটি প্রশ্ন আছে:
বাস্তব পরামিতি হয়
shape=2
,rate=0.2
এবং পরামিতি আমি ফাংশন ব্যবহারfitdistr()
পেতেshape=2.01
,rate=0.20
। এই দুটি প্রায় একই, তবে কেন লাগানো গ্রাফটি আসল পয়েন্টটি ভালভাবে ফিট করে না, লাগানো গ্রাফটিতে অবশ্যই কিছু ভুল থাকতে হবে, বা আমি যেভাবে ফিটিত গ্রাফটি আঁকছি এবং প্রকৃত পয়েন্টগুলি সম্পূর্ণ ভুল, আমার কী করা উচিত? ?আমি মডেল আমি কায়েম এর প্যারামিটার, কোন দিকে আমি মডেল, রৈখিক মডেল বা P-মানের জন্য আরএসএস (অবশিষ্ট বর্গ সমষ্টি) ভালো কিছু মূল্যায়ন পেতে
shapiro.test()
,ks.test()
এবং অন্যান্য পরীক্ষা?
আমি পরিসংখ্যানগত জ্ঞানে দরিদ্র, আপনি দয়া করে আমাকে সাহায্য করতে পারেন?
PS: আমি গুগল, স্ট্যাকওভারফ্লো এবং সিভিতে বহুবার অনুসন্ধান করেছি, তবে এই সমস্যার সাথে সম্পর্কিত কোনও কিছুই পাইনি
h <- hist(x, 1000, plot = FALSE); t1 <- data.frame(x = h$mids, y = h$density)
।