আমি সিমুলেটেড জেনেটিক্স সমস্যায় ফিশারের সঠিক পরীক্ষাটি প্রয়োগ করার চেষ্টা করছি, তবে পি-মানগুলি ডানদিকে স্কুড বলে মনে হচ্ছে। জীববিজ্ঞানী হওয়ার কারণে, আমি অনুমান করি যে আমি প্রতিটি পরিসংখ্যানবিদদের কাছে স্পষ্ট কিছু মিস করছি, তাই আমি আপনার সহায়তার প্রশংসা করব।
আমার সেটআপটি হ'ল: (সেটআপ 1, প্রান্তিক স্থির নয়)
0 এবং 1 এর দুটি নমুনা এলোমেলোভাবে আর এ উত্পন্ন হয় Each প্রতিটি নমুনা এন = 500, 0 এবং 1 নমুনার সম্ভাবনা সমান। তারপরে আমি ফিশারের সঠিক পরীক্ষার সাথে প্রতিটি নমুনায় 0/1 এর অনুপাতগুলি তুলনা করি (ঠিক fisher.test
; একই ফলাফল সহ অন্যান্য সফ্টওয়্যারও চেষ্টা করেছি)। স্যাম্পলিং এবং পরীক্ষা 30,000 বার পুনরাবৃত্তি হয়। ফলাফলের p-মানগুলি এইভাবে বিতরণ করা হয়:
সমস্ত পি-মানগুলির গড়টি 0.55 এর কাছাকাছি, 0.0577 এ 5 তম শতাংশ। এমনকি বিতরণটি ডানদিকে বিচ্ছিন্ন প্রদর্শিত হবে।
আমি যা যা করতে পারি সব পড়ছি, কিন্তু এই আচরণটি স্বাভাবিক হওয়ার কোনও চিহ্ন আমি পাই না - অন্যদিকে, এটি কেবল সিমুলেটেড ডেটা, সুতরাং আমি কোনও পক্ষপাতিত্বের কোনও উত্স দেখতে পাই না। আমি কি কোন সমন্বয় মিস করেছি? খুব ছোট নমুনার আকার? বা সম্ভবত এটি অভিন্ন বিতরণ করার কথা নয়, এবং পি-মানগুলি আলাদাভাবে ব্যাখ্যা করা হয়?
বা আমি কি এইটিকে কয়েক মিলিয়নবার পুনরাবৃত্তি করব, 0.05 কোয়ান্টাইলটি সন্ধান করব এবং যখন আমি এটি সত্য উপাত্তগুলিতে প্রয়োগ করি তখন তা তাত্পর্যপূর্ণ কাট অফ হিসাবে ব্যবহার করতে পারি?
ধন্যবাদ!
হালনাগাদ:
মাইকেল এম 0 এবং 1 এর প্রান্তিক মানগুলি ঠিক করার পরামর্শ দিয়েছিলেন এখন পি-মানগুলি অনেক সুন্দর বিতরণ দেয় - দুর্ভাগ্যক্রমে, এটি অভিন্ন নয়, বা আমি স্বীকৃত অন্য কোনও আকারের নয়:
আসল আর কোড যুক্ত করুন: (সেটআপ 2, প্রান্তিক স্থির)
samples=c(rep(1,500),rep(2,500))
alleles=c(rep(0,500),rep(1,500))
p=NULL
for(i in 1:30000){
alleles=sample(alleles)
p[i]=fisher.test(samples,alleles)$p.value
}
hist(p,breaks=50,col="grey",xlab="p-values",main="")
চূড়ান্ত সম্পাদনা:
মন্তব্যগুলিতে whuber পয়েন্ট হিসাবে, অঞ্চলগুলি কেবল বিনিংয়ের কারণে বিকৃত দেখায়। আমি সেটআপ 1 (ফ্রি মার্জিনাল) এবং সেটআপ 2 (স্থির মার্জিনাল) এর কিউকিউ প্লটগুলি সংযুক্ত করছি। অনুরূপ প্লটগুলি নীচে গ্লেনের সিমুলেশনগুলিতে দেখা যায় এবং বাস্তবে এই সমস্ত ফলাফলগুলি অভিন্ন বলে মনে হয়। সাহায্যের জন্য ধন্যবাদ!