Veri Seti

Column

Değişkenlerin Listesi

[1] "age"      "sex"      "bmi"      "children" "smoker"   "region"   "charges" 

Ana Özet

      age            sex                 bmi           children    
 Min.   :18.00   Length:1338        Min.   :15.96   Min.   :0.000  
 1st Qu.:27.00   Class :character   1st Qu.:26.30   1st Qu.:0.000  
 Median :39.00   Mode  :character   Median :30.40   Median :1.000  
 Mean   :39.21                      Mean   :30.66   Mean   :1.095  
 3rd Qu.:51.00                      3rd Qu.:34.69   3rd Qu.:2.000  
 Max.   :64.00                      Max.   :53.13   Max.   :5.000  
    smoker             region             charges     
 Length:1338        Length:1338        Min.   : 1122  
 Class :character   Class :character   1st Qu.: 4740  
 Mode  :character   Mode  :character   Median : 9382  
                                       Mean   :13270  
                                       3rd Qu.:16640  
                                       Max.   :63770  
Rows: 1,338
Columns: 7
$ age      <int> 19, 18, 28, 33, 32, 31, 46, 37, 37, 60, 25, 62, 23, 56, 27, 1…
$ sex      <chr> "female", "male", "male", "male", "male", "female", "female",…
$ bmi      <dbl> 27.900, 33.770, 33.000, 22.705, 28.880, 25.740, 33.440, 27.74…
$ children <int> 0, 1, 3, 0, 0, 0, 1, 3, 2, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0…
$ smoker   <chr> "yes", "no", "no", "no", "no", "no", "no", "no", "no", "no", …
$ region   <chr> "southwest", "southeast", "southeast", "northwest", "northwes…
$ charges  <dbl> 16884.924, 1725.552, 4449.462, 21984.471, 3866.855, 3756.622,…

Grafikler

Dağılım Grafiği


Dağılım grafiği, yaş ile tıbbi harcamalar arasındaki ilişkiyi gösterir. Noktalar, bireylerin yaşları ile tıbbi harcamalarını temsil etmektedir. Harcamaların genel olarak düşük değerlere yığıldığı ancak yaş arttıkça yüksek harcama yapan bireylerin sayısında bir artış olduğu gözlemlenmektedir. Regresyon çizgisi, yaş ile harcamalar arasında hafif pozitif bir ilişki olduğunu göstermektedir. Bununla birlikte harcamaların değişkenlik gösterebildiği ve yaşın tıbbi harcamaları tek başına açıklamakta yetersiz kaldığı, güven aralığındaki genişlikten anlaşılmaktadır.

Genel eğilim yaşlandıkça tıbbi harcamaların artması yönünde olsa da düşük yaş gruplarında da yüksek harcamaların görülebilmesi dikkat çekicidir. Bu durum özel sağlık durumları veya yüksek tedavi maliyetlerinden kaynaklanıyor olabilir. Bireyler arasında büyük bir varyans olması, harcamaların yaş dışında başka faktörlere de bağlı olduğunu göstermektedir. Yapılan analiz sağlık hizmetlerinin planlanması ve kaynakların dağıtılması konusunda faydalı bir içgörü sağlayabilir.

Etkileşimli Dağılım Grafiği


Etkileşimli grafikler, veri dağılımını analiz etmek için özellikle dağılım grafiklerinde kullanıldığında büyük avantajlar sağlar. Etkileşimli grafikler, statik grafiklere kıyasla kullanıcıya veriyi daha detaylı inceleme ve analiz etme imkanı sunar. Örneğin; grafik üzerindeki bir veri noktasına tıklandığında o noktaya ait spesifik bilgiler (örneğin, yaş ve medikal harcamalar gibi) görüntülenebilir. Kullanıcı grafiği yakınlaştırabilir veya kaydırarak belirli bir bölgeye odaklanabilir. Geniş veri setlerinde veya yoğun veri noktalarının olduğu durumlarda veriyi daha iyi anlamaya yardımcı olur. Birden fazla veri katmanının olduğu grafiklerde, kullanıcı bu katmanları açıp kapatarak sadece ilgilendiği bilgiyi görebilir.

Etkileşim grafik için dağılım grafiğinin seçilmesinin temel nedeni, bireysel veri noktalarını detaylı bir şekilde inceleyebilme imkanı sunmasıdır. Dağılım grafiği, yaş ve medikal harcamalar arasındaki ilişkinin doğasını (örneğin, doğrusal mı yoksa başka bir model mi izlediğini) görselleştirmek için idealdir. Histogram ve boxplot gibi grafik türlerinin okunabilirliği dağılım grafiklerine göre daha kolaydır. Dolayısıyla dağılım grafiğinde her bir noktanın hangi değere karşılık geldiğini etkileşimli şekilde görmek kullanıcıya kolaylık sağlar.

Histogram Grafiği


Vücut kitle indeksi (BMI) dağılımını gösteren bir histogram üretilmiştir. X ekseni, bireylerin vücut kitle indeksini temsil eden sayısal değerleri gösterirken Y ekseni ise bu değer aralığında kaç kişinin bulunduğunu göstermektedir. Grafik BMI’nin genel popülasyonda nasıl dağıldığını görmemizi sağlar. BMI, kişinin kilosunun boyuna oranını ifade eden bir ölçüdür. Bireylerin zayıf, normal kilolu, fazla kilolu ya da obez olup olmadığını değerlendirmekte kullanılır.

Grafiğin detaylarına bakıldığında BMI’nin çoğunlukla 20 ile 35 arasında yoğunlaştığı görülmektedir. Grafiğin zirve noktası yaklaşık 25 BMI civarındadır, bu durum popülasyondaki en yaygın BMI değerinin bu civarda olduğunu işaret eder. 25’in üzerindeki BMI değerleri fazla kilolu ya da obez bireyleri ifade ederken 18’in altındaki değerler zayıf bireyleri temsil eder. 40 ve üzeri BMI’ye doğru gidildikçe bireylerin sayısı hızla azalmaktadır. Bu eğilim aşırı obez bireylerin sayısının düşük olduğunu gösterir. Sol uçta ise 15-20 BMI aralığında bazı bireylerin bulunduğu görülmektedir ancak bu grup da oldukça azdır. Histogram genel olarak popülasyonda ortalama BMI değerinin 25 civarında olduğunu, çok düşük ya da çok yüksek BMI’lerin daha nadir olduğunu gösteren bir dağılım sunmaktadır.

Kutu Grafiği-1


Sigara içme durumuna göre tıbbi harcamaların dağılımını gösteren bir kutu grafiği yer almaktadır. X ekseni bireylerin sigara içip içmediğini belirtirken (“no” sigara içmeyenleri, “yes” sigara içenleri temsil ediyor), Y ekseni tıbbi harcamaların miktarını göstermektedir. Kutu grafikleri, veri setinin dağılımını ve olası uç noktaları görselleştirir. Kutu grafiğindeki kutunun ortasındaki çizgi medyanı temsil ederken kutunun üst ve alt kenarları verinin %75 ve %25’lik dilimlerini gösterir. Kutu dışındaki çizgiler ise verinin çoğunun dış sınırlarını belirtir. Grafikte ayrıca, “no” grubunda aykırı değerler göze çarpmaktadır.

Grafik incelendiğinde, sigara içenlerin tıbbi harcamalarının sigara içmeyenlere göre çok daha yüksek olduğu açıkça görülmektedir. Sigara içenlerin tıbbi harcamalarının medyanı yaklaşık 40.000 iken içmeyenlerin medyanı 10.000’in altında kalmaktadır. Bu durum sigara içmenin sağlık üzerinde büyük maliyetli etkileri olduğunu göstermektedir. Sigara içenlerde tıbbi harcamaların üst sınırının daha geniş olduğu ve çok daha yüksek seviyelere ulaştığı da dikkat çekmektedir. Sigara içmeyenlerde ise tıbbi harcamalar genelde daha düşük olup grafikte bazı aykırı değerler dışında harcamalar daha sınırlı bir aralıkta seyretmektedir.

Kutu Grafiği-2


Farklı bölgelerdeki bireylerin Vücut Kitle İndeksi (BMI) dağılımı kutu grafikleri ile gösterilmektedir. Her bir kutu grafiği, bir bölgenin BMI değerlerini temsil eder. Grafiğin sağ üst kısmında görülen nokta gibi işaretler, istisnai uç değerlerin var olduğunu göstermektedir. BMI değerleri ne kadar yüksekse, obezite veya fazla kilolu olma riski o kadar yüksektir. Grafiğe bakıldığında “southeast” bölgesinin medyan BMI değerinin diğer bölgelere göre daha yüksek olduğu görülmektedir. “Güneydoğu”southeast” bölgesindeki bireylerin ortalama olarak daha yüksek BMI değerine sahip olduğunu ve belki de fazla kilo ile ilgili sorunların bu bölgede daha belirgin olduğunu düşündürebilir. “southeast” bölgesinden sonra en yüksek ortalama değerine “southwest” sahiptir. “northwest” ve “northeast” bölgelerinde ise dağılım daha dar görünmektedir, bu da bu bölgelerdeki BMI değerlerinin daha dengeli olduğunu gösterebilir.

Kutu Grafiği-3


Kutu grafiği, dört farklı bölgeye göre çocuk sayısının dağılımını göstermektedir: kuzeydoğu, kuzeybatı, güneydoğu ve güneybatı. X ekseninde bölge isimleri yer alırken Y ekseni her bir bölgede bireylerin sahip olduğu çocuk sayısını göstermektedir. Grafikte tüm bölgeler için medyan çocuk sayısının 1 olduğu görülmektedir yani farklı bölgelerdeki insanların çoğu 1 çocuk sahibidir. Kutu grafiğinin %25’lik dilimi ile %75’lik dilimi arasında genellikle 0 ila 2 çocuk olduğu anlaşılmaktadır, bu durum da bölgeler arasında çocuk sayısında büyük bir fark olmadığını gösterir. Genel olarak, dört bölge arasında çocuk sayısındaki dağılımda önemli bir fark olmadığını söylemek mümkündür çünkü kutuların boyutu ve aralıkları oldukça benzer. Bu da farklı bölgeler arasında çocuk sahibi olma oranlarının oldukça eşit olduğunu gösteriyor.

Referanslar

Dashboard yapımında: https://pkgs.rstudio.com/flexdashboard/articles/examples.html

https://pkgs.rstudio.com/flexdashboard/articles/using.html

https://epirhandbook.com/new_pages/flexdashboard.html

Veri setini seçimi:
https://rkabacoff.github.io/datavis/Datasets.html

Grafiklerin üretilmesinde: https://www.data-to-viz.com/

---
title: "Medical Cost Dashboard"
author: "ZEYNEP HENDEM & 220507015"
date: "26.01.2025"
output: 
  flexdashboard::flex_dashboard:
    theme: cerulean
    social: menu
    source: embed
---

```{r setup, include=FALSE}
library(flexdashboard)
library(rio)
library(tidyverse)
library(janitor)
library(plotly)
library(ggplot2)
library(magrittr)

#Veri setinin yüklenmesi
insurance <- read.csv("insurance.csv")


```

Veri Seti
=========================================

Column
-----------------------------------------
***Değişkenlerin Listesi***

```{r}

colnames(insurance)

```

***Ana Özet***

```{r}

summary(insurance)
glimpse(insurance)

```


Grafikler {.storyboard}
=========================================

### Dağılım Grafiği

```{r, warning= F, message=F}

ggplot(insurance, aes(x = age, y = charges)) +
  geom_point(shape = 19, alpha = 0.9, color = "darkcyan") +
  geom_smooth(method = "loess", se = TRUE, color = "red", linetype = "dashed", size = 0.8) +
  labs(
    title = "Age vs. Medical Charges",
    x = "Age",
    y = "Medical Charges",
  ) +
  theme_minimal() +
  theme(
    plot.title = element_text(hjust = 0.5, face = "bold", size = 16),
    plot.subtitle = element_text(hjust = 0.5, size = 12),
    axis.title = element_text(size = 12),
    axis.text = element_text(size = 8)
  )

```

***
Dağılım grafiği, yaş ile tıbbi harcamalar arasındaki ilişkiyi gösterir. Noktalar, bireylerin yaşları ile tıbbi harcamalarını temsil etmektedir. Harcamaların genel olarak düşük değerlere yığıldığı ancak yaş arttıkça yüksek harcama yapan bireylerin sayısında bir artış olduğu gözlemlenmektedir. Regresyon çizgisi, yaş ile harcamalar arasında hafif pozitif bir ilişki olduğunu göstermektedir. Bununla birlikte harcamaların değişkenlik gösterebildiği ve yaşın tıbbi harcamaları tek başına açıklamakta yetersiz kaldığı, güven aralığındaki genişlikten anlaşılmaktadır.

Genel eğilim yaşlandıkça tıbbi harcamaların artması yönünde olsa da düşük yaş gruplarında da yüksek harcamaların görülebilmesi dikkat çekicidir. Bu durum özel sağlık durumları veya yüksek tedavi maliyetlerinden kaynaklanıyor olabilir. Bireyler arasında büyük bir varyans olması, harcamaların yaş dışında başka faktörlere de bağlı olduğunu göstermektedir. Yapılan analiz sağlık hizmetlerinin planlanması ve kaynakların dağıtılması konusunda faydalı bir içgörü sağlayabilir.

### Etkileşimli Dağılım Grafiği

```{r message=FALSE, warning=FALSE}

p1 <- ggplot(insurance, aes(x = age, y = charges)) +
  geom_point(shape = 19, alpha = 0.9, color = "darkcyan") +
  geom_smooth(method = "loess", se = TRUE, color = "red", linetype = "dashed", size = 0.8) +
  labs(
    title = "Age vs. Medical Charges",
    x = "Age",
    y = "Medical Charges",
  ) +
  theme_minimal() +
  theme(
    plot.title = element_text(hjust = 0.5, face = "bold", size = 16),
    plot.subtitle = element_text(hjust = 0.5, size = 12),
    axis.title = element_text(size = 12),
    axis.text = element_text(size = 8)
  )
ggplotly(p1)

```

***
Etkileşimli grafikler, veri dağılımını analiz etmek için özellikle dağılım grafiklerinde kullanıldığında büyük avantajlar sağlar. Etkileşimli grafikler, statik grafiklere kıyasla kullanıcıya veriyi daha detaylı inceleme ve analiz etme imkanı sunar. Örneğin; grafik üzerindeki bir veri noktasına tıklandığında o noktaya ait spesifik bilgiler (örneğin, yaş ve medikal harcamalar gibi) görüntülenebilir. Kullanıcı grafiği yakınlaştırabilir veya kaydırarak belirli bir bölgeye odaklanabilir. Geniş veri setlerinde veya yoğun veri noktalarının olduğu durumlarda veriyi daha iyi anlamaya yardımcı olur. Birden fazla veri katmanının olduğu grafiklerde, kullanıcı bu katmanları açıp kapatarak sadece ilgilendiği bilgiyi görebilir.

Etkileşim grafik için dağılım grafiğinin seçilmesinin temel nedeni, bireysel veri noktalarını detaylı bir şekilde
inceleyebilme imkanı sunmasıdır. Dağılım grafiği, yaş ve medikal harcamalar arasındaki ilişkinin doğasını (örneğin, doğrusal mı yoksa başka bir model mi izlediğini) görselleştirmek için idealdir. Histogram ve boxplot gibi grafik türlerinin okunabilirliği dağılım grafiklerine göre daha kolaydır. Dolayısıyla dağılım grafiğinde her bir noktanın hangi değere karşılık geldiğini etkileşimli şekilde görmek kullanıcıya kolaylık sağlar.

### Histogram Grafiği

```{r message=FALSE, warning=FALSE}

ggplot(insurance, aes(x = bmi)) +
  geom_histogram(binwidth = 0.5, color = "white", fill = "orange", alpha = 0.9) +  
  labs(
    title = "Distribution of BMI",
    x = "Body Mass Index (BMI)",
    y = "Count"
  ) +
  theme_minimal() +
  theme(
    plot.title = element_text(hjust = 0.5, face = "bold", size = 16),  
    plot.subtitle = element_text(hjust = 0.5, size = 12),  
    axis.title = element_text(size = 12),
    axis.text = element_text(size = 10)
  )

```

***
Vücut kitle indeksi (BMI) dağılımını gösteren bir histogram üretilmiştir. X ekseni, bireylerin vücut kitle indeksini temsil eden sayısal değerleri gösterirken Y ekseni ise bu değer aralığında kaç kişinin bulunduğunu göstermektedir. Grafik BMI'nin genel popülasyonda nasıl dağıldığını görmemizi sağlar. BMI, kişinin kilosunun boyuna oranını ifade eden bir ölçüdür. Bireylerin zayıf, normal kilolu, fazla kilolu ya da obez olup olmadığını değerlendirmekte kullanılır. 

Grafiğin detaylarına bakıldığında BMI'nin çoğunlukla 20 ile 35 arasında yoğunlaştığı görülmektedir. Grafiğin zirve noktası yaklaşık 25 BMI civarındadır, bu durum popülasyondaki en yaygın BMI değerinin bu civarda olduğunu işaret eder. 25'in üzerindeki BMI değerleri fazla kilolu ya da obez bireyleri ifade ederken 18'in altındaki değerler zayıf bireyleri temsil eder. 40 ve üzeri BMI'ye doğru gidildikçe bireylerin sayısı hızla azalmaktadır. Bu eğilim aşırı obez bireylerin sayısının düşük olduğunu gösterir. Sol uçta ise 15-20 BMI aralığında bazı bireylerin bulunduğu görülmektedir ancak bu grup da oldukça azdır. Histogram genel olarak popülasyonda ortalama BMI değerinin 25 civarında olduğunu, çok düşük ya da çok yüksek BMI'lerin daha nadir olduğunu gösteren bir dağılım sunmaktadır.


### Kutu Grafiği-1

```{r}

ggplot(insurance, aes(x = smoker, y = charges, fill = smoker)) +
  geom_boxplot(color = "black", alpha = 0.9) +  
  scale_fill_manual(values = c(
    "yes" = "green",  
    "no" = "red"   
  )) +
  labs(
    title = "Medical Charges by Smoking Status",
    x = "Smoking Status",
    y = "Medical Charges",
    fill = "Smoker"
  ) +
  theme_minimal() +
  theme(
    plot.title = element_text(hjust = 0.5, face = "bold", size = 16),  
    plot.subtitle = element_text(hjust = 0.5, size = 12),  
    axis.title = element_text(size = 12),
    axis.text = element_text(size = 10),
    legend.position = "none",  
    legend.title = element_text(size = 10, face = "bold"),
    legend.text = element_text(size = 10)
  )

```

***
Sigara içme durumuna göre tıbbi harcamaların dağılımını gösteren bir kutu grafiği yer almaktadır. X ekseni bireylerin sigara içip içmediğini belirtirken ("no" sigara içmeyenleri, "yes" sigara içenleri temsil ediyor), Y ekseni tıbbi harcamaların miktarını göstermektedir. Kutu grafikleri, veri setinin dağılımını ve olası uç noktaları görselleştirir. Kutu grafiğindeki kutunun ortasındaki çizgi medyanı temsil ederken kutunun üst ve alt kenarları verinin %75 ve %25’lik dilimlerini gösterir. Kutu dışındaki çizgiler ise verinin çoğunun dış sınırlarını belirtir. Grafikte ayrıca, "no" grubunda aykırı değerler göze çarpmaktadır.

Grafik incelendiğinde, sigara içenlerin tıbbi harcamalarının sigara içmeyenlere göre çok daha yüksek olduğu açıkça görülmektedir. Sigara içenlerin tıbbi harcamalarının medyanı yaklaşık 40.000 iken içmeyenlerin medyanı 10.000'in altında kalmaktadır. Bu durum sigara içmenin sağlık üzerinde büyük maliyetli etkileri olduğunu göstermektedir. Sigara içenlerde tıbbi harcamaların üst sınırının daha geniş olduğu ve çok daha yüksek seviyelere ulaştığı da dikkat çekmektedir. Sigara içmeyenlerde ise tıbbi harcamalar genelde daha düşük olup grafikte bazı aykırı değerler dışında harcamalar daha sınırlı bir aralıkta seyretmektedir.

### Kutu Grafiği-2


```{r}

ggplot(insurance, aes(x = region, y = bmi, fill = region)) +
  geom_boxplot(color = "black", alpha = 1.2) +  
  scale_fill_manual(values = c(
    "northeast" = "#ADD8E6",  
    "northwest" = "#228B22", 
    "southeast" = "#FFCC00",  
    "southwest" = "#8A2BE2"   
  )) +
  labs(
    title = "BMI Distribution by Region",
    x = "Region",
    y = "Body Mass Index (BMI)",
    fill = "Region"
  ) +
  theme_minimal() +
  theme(
    plot.title = element_text(hjust = 0.5, face = "bold", size = 16),  
    plot.subtitle = element_text(hjust = 0.5, size = 12),  
    axis.title = element_text(size = 12),
    axis.text = element_text(size = 10),
    legend.position = "none"  # Legend kaldırıldı çünkü x ekseni yeterli
  )

```

***
Farklı bölgelerdeki bireylerin Vücut Kitle İndeksi (BMI) dağılımı kutu grafikleri ile gösterilmektedir. Her bir kutu grafiği, bir bölgenin BMI değerlerini temsil eder. Grafiğin sağ üst kısmında görülen nokta gibi işaretler, istisnai uç değerlerin var olduğunu göstermektedir. BMI değerleri ne kadar yüksekse, obezite veya fazla kilolu olma riski o kadar yüksektir. Grafiğe bakıldığında "southeast" bölgesinin medyan BMI değerinin diğer bölgelere göre daha yüksek olduğu görülmektedir. "Güneydoğu"southeast" bölgesindeki bireylerin ortalama olarak daha yüksek BMI değerine sahip olduğunu ve belki de fazla kilo ile ilgili sorunların bu bölgede daha belirgin olduğunu düşündürebilir. "southeast" bölgesinden sonra en yüksek ortalama değerine "southwest" sahiptir. "northwest" ve "northeast" bölgelerinde ise dağılım daha dar görünmektedir, bu da bu bölgelerdeki BMI değerlerinin daha dengeli olduğunu gösterebilir.

### Kutu Grafiği-3

```{r}

ggplot(insurance, aes(x = region, y = children, fill = region)) +
  geom_boxplot(color = "black", alpha = 1.2) + 
  scale_fill_manual(values = c(
    "southwest" = "#F4A300",  
    "southeast" = "#FF7F50",  
    "northwest" = "#2E8B57",  
    "northeast" = "#800080"   
  )) +
  labs(
    title = "Number of Children by Region",
    x = "Region",
    y = "Number of Children",
    fill = "Region"
  ) +
  theme_minimal() +
  theme(
    plot.title = element_text(hjust = 0.5, face = "bold", size = 16),
    plot.subtitle = element_text(hjust = 0.5, size = 12),
    axis.title = element_text(size = 12),
    axis.text = element_text(size = 10),
    legend.position = "none"  
  )

```

***
Kutu grafiği, dört farklı bölgeye göre çocuk sayısının dağılımını göstermektedir: kuzeydoğu, kuzeybatı, güneydoğu ve güneybatı. X ekseninde bölge isimleri yer alırken Y ekseni her bir bölgede bireylerin sahip olduğu çocuk sayısını göstermektedir. Grafikte tüm bölgeler için medyan çocuk sayısının 1 olduğu görülmektedir yani farklı bölgelerdeki insanların çoğu 1 çocuk sahibidir. Kutu grafiğinin %25’lik dilimi ile %75’lik dilimi arasında genellikle 0 ila 2 çocuk olduğu anlaşılmaktadır, bu durum da bölgeler arasında çocuk sayısında büyük bir fark olmadığını gösterir. Genel olarak, dört bölge arasında çocuk sayısındaki dağılımda önemli bir fark olmadığını söylemek mümkündür çünkü kutuların boyutu ve aralıkları oldukça benzer. Bu da farklı bölgeler arasında çocuk sahibi olma oranlarının oldukça eşit olduğunu gösteriyor.

Referanslar
=========================================
Dashboard yapımında: 
https://pkgs.rstudio.com/flexdashboard/articles/examples.html

https://pkgs.rstudio.com/flexdashboard/articles/using.html

https://epirhandbook.com/new_pages/flexdashboard.html
                     
Veri setini seçimi:  
https://rkabacoff.github.io/datavis/Datasets.html

Grafiklerin üretilmesinde: 
https://www.data-to-viz.com/