আর এ স্ট্যান্ডার্ড বিচ্যুতি জন্য কোন সূত্র ব্যবহার করা হয়?


19

আর-তে স্ট্যান্ডার্ড বিচ্যুতি ফাংশনে কোন সূত্র ব্যবহৃত হয় sd?


সাধারণত, আপনি জেসনিডারের মতো ফাংশনটির কোডটি প্রথম বন্ধনী ছাড়াই কল করে পড়তে সক্ষম হবেন।
ওয়ে জেসেন

2
@ ওজেজেসেন সত্য হলেও এটি প্রায়শই সহায়ক হিসাবে কার্যকর মনে হয় না। আর এর অনেকগুলি ফাংশন হ'ল কেবল মোড়ককে অন্তর্নিহিত সি কোড বলে। উদাহরণস্বরূপ, এসডি আপনাকে ভারে নিয়ে যায়, যা আপনাকে। কল (সি_কভ, এক্স, ওয়াই, না.মোথডিয়া, ফলস) এ নিয়ে যায়।
এরিক

উত্তর:


31

@ জিচনিডার দ্বারা নির্দেশিত হিসাবে, এটি নমুনার স্ট্যান্ডার্ড বিচ্যুতি গণনা করে

Σআমি=1এন(এক্সআমি-এক্স¯)2এন-1

যা আপনি সহজেই নীচের হিসাবে চেক করতে পারেন:

> #generate a random vector
> x <- rnorm(n=5, mean=3, sd=1.5)
> n <- length(x)
> 
> #sd in R
> sd1 <- sd(x)
> 
> #self-written sd
> sd2 <- sqrt(sum((x - mean(x))^2) / (n - 1))
>  
> #comparison
> c(sd1, sd2)   #:-)
[1] 0.6054196 0.6054196

4
আপনি যদি সহায়তার পৃষ্ঠাটি (? এসডি) দেখুন তবে এটিতে বলা হয়েছে "লাইক ভার, এটি ডিনামিনেটর এন -1 ব্যবহার করে", যদি কোনও কারণে আপনি অ্যাক্রামের সিমুলেশনটি বিশ্বাস করেন না :-)
ম্যাট ক্রাউস

@ ম্যাট: সম্ভবত তাদের সেই সহায়তা ফাইলটি আপডেট করা উচিত এবং "এটি বারের স্কয়ারটি ফিরিয়ে দেয়" এর মতো কিছু বলবে?
ওয়ে জেসেন

@ ওজেজেসন, আমি মনে করি এটি আসলে বলে যে "ভের তার স্কোয়ারটি ফিরিয়ে দেয়!"
ম্যাট ক্রাউস

আরও দেখুন: স্ট্যাকওভারফ্লো / প্রশ্নগুলি / 9508518/… কেন এই সিমুলেশন উভয় ফাংশনের জন্য আলাদা ফলাফল দিতে পারে তা শেখার জন্য।
টিম

এটির পরীক্ষা করার আরও একটি সহজ উপায় sd( c(-1,0,1) )যা 1 আউটপুট দেয়
কেজেটিল বি হালওয়ারসেন

12

হ্যাঁ. প্রযুক্তিগতভাবে, এটি নমুনার বৈকল্পিকগুলি গণনা করে এবং তারপরে স্কোয়ার রুট নেয়:

> sd
function (x, na.rm = FALSE) 
{
if (is.matrix(x)) 
    apply(x, 2, sd, na.rm = na.rm)
else if (is.vector(x)) 
    sqrt(var(x, na.rm = na.rm))
else if (is.data.frame(x)) 
    sapply(x, sd, na.rm = na.rm)
else sqrt(var(as.vector(x), na.rm = na.rm))
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.