Kümeleme Analizi


Bugün R programinda kümeleme analizi nasil yapildigini inceleyecegiz. Kümeleme analizi, bir veri setindeki degiskenlerin benzer karakteristik özelligi olanlari gruplama yöntemidir. Diger bir deyisle kümeleme analizi degiskenleri benzer bicimde bir araya getirirken, kümeler arasinda maksimum farklilik saglar.

Kümeleme analizini R programinda “hclust” komutu ile yapiyoruz. Öncelikle bu komutun argümanlarini bir taniyalim

hclust(d, method="complete",…)

burada “d” veri setimizi simgeler, “method” kümeleme yöntemleri için bir argümandir ve içerisinde "single", "complete", "average", "mcquitty", "ward.D", "ward.D2", "centroid" or "median" degerlerini barindirir. Simdi bu yöntemi birkaç örnekle uygulayalim.

ÖRNEK – 1

“fastcluster” paketi içerisinde bulunan “USArrests” veri setine ulasmak için öncelikle ilgili paketi indiriyoruz. Daha önceden belirttigim gibi r paketlerinin hemen hemen hepsinde bir veri seti bulunmaktadir.

>install.packages("fastcluster")

Paketi indirdikten sonra komut satirina “USArrests” yazildigi zaman  verisetine ait degiskenleri görebiliriz.

Murder                Assault                                UrbanPop           Rape

Alabama              13.2                       236                        58                           21.2

Alaska                  10.0                       263                        48                           44.5

Arizona                8.1                         294                        80                           31.0

Veriden de anlasilacagi üzere veri seti  Amarikada’ki suç oranlarini barindirmaktadir. Bu veri seti için bir kümeleme analizi yapalim.

> hc <- hclust(dist(USArrests), "ave")

>hc

Call:

hclust(d = dist(USArrests), method = "ave")

Cluster method   : average

Distance         : euclidean

Number of objects: 50

“hclust” komutu ile kümeleme yapiliyor ve tabiki bu kümelemeyi yapmadan önce uzaklik matrisini de bulmamiz gerektiginden “dist” komutunu kullaniyoruz. Ayni zamanda method olarak “average” seçtik. Sonrasinda bunu bir grafik içerisinde görmek istersek;

>plot(hc)

Komutunu kullaniriz. Grafigi biraz daha gelistirmek istersek;

> groups <- cutree(hc, k=5)

> rect.hclust(hc, k=5, border="red")

Yukaridaki iki komutu kullandigimizda bize veri setini kaç adet kümeye ayirmamiz gerektigi noktasinda yardimci olmaktadir. Ayni örnek üzerinde grafikleri biraz daha gelistirelim ve farkli grafikler kullanalim. Bunun için “cluster” paketini indirmemiz gereklidir.

>install.packages("cluster")

>library(cluster)

>fit <- kmeans(USArrests, 5)

> clusplot(USArrests, fit$cluster, color=TRUE, shade=TRUE, labels=2, lines=0)

Yukaridaki komutlari inceledigimizde “kmeans” komutu ilgili veri setinde K-Means teknigi ile 5 farkli kümeye ayirmaktadir ve “clusplot” kümeleme ile ilgili farkli bir grafik setidir.

Konu ile ilgili soru ve görüsleriniz için mesaj atabilirsiniz. Lütfen sayfamizi begenmeyi unutmayiniz.

KAYNAKLAR

http://www.statmethods.net/advstats/cluster.html

https://stat.ethz.ch/R-manual/R-devel/library/stats/html/hclust.html

 

 

Yazar Kimdir?

Sıtkı Cansu, 19 Ekim 1985 yilinda Konya-Beyşehir'de dogmustur.İlk, orta ve liseyi Beyşehir'de bitirmis olup Konya-Ereğli Selçuk MYO Bilgisayar programcılığı ve Mugla Sıtkı Koçman Üniversitesi İstatistik bölümünden mezun olmustur. Çesitli yerlerde web tasarımcı ve veri tabani yöneticisi olarak çalışan yazar, son üç senedir ingilizce öğretmenliği yapmaktadir. Şu anda yüksek lisansını tamamlamak üzere Mugla Üniversitesinde öğrenim görmektedir.