Ggplot2'de qq grafiği nasıl oluşturulur (örnekle)
Bir veri kümesinin potansiyel olarak teorik bir dağılımdan gelip gelmediğini değerlendirmek için “kantil-nicelik” kelimesinin kısaltması olan bir QQ grafiği kullanılır.
Çoğu durumda bu tür çizim, bir veri kümesinin normal dağılıma uyup uymadığını belirlemek için kullanılır.
Veriler normal olarak dağılıyorsa, QQ grafiğindeki noktalar düz bir çapraz çizgi üzerinde yer alacaktır.
Tersine, eğer noktalar düz çapraz çizgiden önemli ölçüde sapıyorsa, verilerin normal dağılma olasılığı daha düşüktür.
Ggplot2’de bir QQ grafiği oluşturmak için stat_qq() ve stat_qq_line() işlevlerini aşağıdaki gibi kullanabilirsiniz:
library (ggplot2)
ggplot(df, aes(sample=y)) +
stat_qq() +
stat_qq_line()
Aşağıdaki örnekler, iki farklı senaryoda bir QQ grafiği oluşturmak için bu sözdiziminin nasıl kullanılacağını gösterir.
Örnek 1: Normal veriler için QQ grafiği
Aşağıdaki kod, 200 gözlemle normal şekilde dağıtılmış bir veri kümesinin nasıl oluşturulacağını ve R’deki veri kümesi için bir QQ grafiğinin nasıl oluşturulacağını gösterir:
library (ggplot2) #make this example reproducible set. seeds (1) #create some fake data that follows a normal distribution df <- data. frame (y=rnorm(200)) #create QQ plot ggplot(df, aes(sample=y)) + stat_qq() + stat_qq_line()
Noktaların esas olarak düz çapraz çizgi boyunca uzandığını ve her bir kuyruk boyunca bazı küçük sapmalar olduğunu görebiliriz.
Bu grafiğe dayanarak, bu veri kümesinin normal dağıldığını varsayacağız.
İsterseniz çizimdeki noktaların rengini ve boyutunu değiştirmek için renk ve boyut argümanlarını da kullanabileceğimizi unutmayın:
library (ggplot2) #make this example reproducible set. seeds (1) #create some fake data that follows a normal distribution df <- data. frame (y=rnorm(200)) #create QQ plot ggplot(df, aes(sample=y)) + stat_qq(size= 2.5 , color=' red ') + stat_qq_line()
Örnek 2: Normal olmayan veriler için QQ grafiği
Aşağıdaki kod, 200 gözlemle üstel bir dağılım izleyen bir veri kümesi için QQ grafiğinin nasıl oluşturulacağını gösterir:
#make this example reproducible set. seeds (1) #create some fake data that follows an exponential distribution df <- data. frame (y=rexp( 200 , rate= 3 )) #create QQ plot ggplot(df, aes(sample=y)) + stat_qq() + stat_qq_line()
Noktaların diyagonal çizgiden önemli ölçüde saptığını görüyoruz. Bu açıkça veri setinin normal dağılmadığını gösterir.
Verilerin üstel bir dağılım izlemesi gerektiğini belirttiğimiz göz önüne alındığında, bu mantıklı olmalıdır.
Ek kaynaklar
Aşağıdaki eğitimler ggplot2’de diğer genel görevlerin nasıl gerçekleştirileceğini açıklamaktadır:
Ggplot2’de birden fazla satır nasıl çizilir
Ggplot2’de ortalama ve standart sapma nasıl çizilir
Ggplot2’de çizgi renkleri nasıl değiştirilir?