R, veri analizi ve görselleştirme için popüler bir programlama dili ve çevreleyicisidir. R, açık kaynaklı bir dil olmasıyla birlikte geniş bir kullanıcı topluluğuna sahiptir ve sürekli olarak gelişmektedir. R’nin gücü, zengin bir paket ekosistemiyle gelir. Bu paketler, belirli görevler için önceden yazılmış fonksiyonlar ve araçlar içerir ve R kullanıcılarının veri analizi sürecini hızlandırır.
R paketlerinin kullanımı, veri analizi ve işleme süreçlerini büyük ölçüde kolaylaştırır. Bu paketler, önceden tanımlanmış işlevleri ve fonksiyonları içerir, böylece kullanıcılar veriye hızlıca erişebilir ve çeşitli analizler gerçekleştirebilir. Ayrıca, R paketleri, görselleştirme araçlarıyla birleştirildiğinde, veriye dair önemli bilgilerin görsel olarak temsil edilmesini sağlar. Bu, karmaşık veri kümelerini daha anlaşılır hale getirir ve analiz sonuçlarını paylaşmayı kolaylaştırır.
Bu projede, R ve belirli R paketleri kullanılarak Dünya Bankası verileri üzerinde analiz ve görselleştirme gerçekleştirilecektir. Kullanılan paketler arasında WDI, EXPLORE, ggplot2, tidyverse veya dplyr, ve magrittr bulunmaktadır. Her biri, veri çekme, temizleme, analiz ve görselleştirme aşamalarında önemli roller üstlenir. Bu paketlerin bir araya gelmesi, veri analizi sürecini etkili bir şekilde yönetmemizi ve sonuçları anlamamızı sağlar.
# Gerekli kütüphaneleri yükleme
library(WDI)
library(explore)
library(ggplot2)
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.4 ✔ readr 2.1.5
## ✔ forcats 1.0.0 ✔ stringr 1.5.1
## ✔ lubridate 1.9.3 ✔ tibble 3.2.1
## ✔ purrr 1.0.2 ✔ tidyr 1.3.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(dplyr)
Şimdi her bir paketi kısaca açıklayalım:
Kullanım Durumu: WDI paketi, farklı ülkelerin ekonomik ve sosyal göstergelerini analiz etmek için idealdir. Örneğin, milli gelir, nüfus, eğitim seviyeleri gibi çeşitli göstergeleri çekebilir ve karşılaştırabilirsiniz.
Kullanım Durumu: EXPLORE paketi, veri seti üzerinde ilk keşiflerinizi yapmak için kullanışlıdır. Örneğin, veri setinizin dağılımını, temel istatistikleri, eksik değerleri ve diğer özellikleri hızlıca görselleştirebilirsiniz.
Kullanım Durumu: ggplot2 paketi, verilerinizi çeşitli grafiklerle görsel olarak temsil etmek için kullanılır. Scatter plot, line plot, bar plot gibi farklı grafik türlerini oluşturabilir ve verilerinizin yapılarını daha iyi anlayabilirsiniz.
Kullanım Durumu: tidyverse paketi, veri setlerini temizlemek, dönüştürmek ve analiz etmek için kullanılır. dplyr paketi, veri setlerini filtrelemek, toplamak, dönüştürmek ve özetlemek için kullanılırken, ggplot2 paketi, verileri görsel olarak temsil etmek için kullanılır. tidyr paketi, veri setlerinin yapısal dönüşümlerini gerçekleştirirken, purrr paketi, tekrarlayan işlemleri gerçekleştirmek için kullanılır. tidyverse’ın birleştirilmiş gücü, veri analizi sürecini daha akıcı ve etkili hale getirir.
tidyverse paketi, özellikle veri bilimi ve analitiği alanında çalışanlar için vazgeçilmez bir araç setidir. Veri temizleme, dönüştürme, analiz ve görselleştirme işlemlerini tek bir kohorte içinde birleştirir ve R kullanıcılarına veri odaklı çalışmalarında büyük kolaylık sağlar.
Kullanım Durumu: Tidyverse veya Dplyr, veri setiniz üzerinde çeşitli manipülasyon işlemleri gerçekleştirmek için kullanılır. Veri filtreleme, sütun seçme, sütun ekleme gibi işlemleri kolayca yapabilirsiniz.
5- Dplyr, R programlama dilinde veri manipülasyonu için kullanılan bir pakettir. Veri çerçevelerinde sık kullanılan işlemleri (filtreleme, toplama, dönüştürme, birleştirme vb.) kolaylaştırmak için tasarlanmıştır. Dplyr, veri işleme işlemlerini kolay ve anlaşılır bir şekilde gerçekleştirmek için bir dizi fonksiyon sunar. Bu fonksiyonlar, veri manipülasyonunu hızlı ve verimli bir şekilde yapmamızı sağlar. Özellikle büyük veri kümeleriyle çalışırken performans avantajları sunar.
Kullanım Durumu: magrittr paketi, veri manipülasyon işlemlerini daha temiz ve anlaşılır bir şekilde yazmak için kullanılır. Zincirleme işlemler oluşturabilir ve R kodunuzu daha etkili bir şekilde yönetebilirsiniz.
Bu proje, Dünya Bankası verilerini kullanarak, seçilen ülkelerin tarımsal göstergelerini incelemeyi amaçlamaktadır. Veri analizi ve görselleştirme araçları kullanılarak, tarımsal arazi kullanımının ve tarımın ekonomideki önemine dair içgörüler elde edilecektir. Bu veriler, tarım sektörünün büyüklüğünü, değişkenliklerini ve uluslararası karşılaştırmalarını yapmak için kullanılacaktır.
# Dünya Bankası'ndan veri çekme
data <- WDI(country = c("USA", "CHN"), indicator = c("AG.LND.AGRI.ZS", "AG.LND.AGRI.K2"), start = 2000, end = 2020)
# Veri yapısını kontrol etme
str(data)
## 'data.frame': 42 obs. of 6 variables:
## $ country : chr "China" "China" "China" "China" ...
## $ iso2c : chr "CN" "CN" "CN" "CN" ...
## $ iso3c : chr "CHN" "CHN" "CHN" "CHN" ...
## $ year : int 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 ...
## $ AG.LND.AGRI.ZS: num 55.7 55.8 55.8 55.9 55.9 ...
## ..- attr(*, "label")= chr "Agricultural land (% of land area)"
## $ AG.LND.AGRI.K2: num 5228730 5234668 5240607 5246545 5252484 ...
## ..- attr(*, "label")= chr "Agricultural land (sq. km)"
# İlk birkaç gözlemi görüntüleme
head(data)
## country iso2c iso3c year AG.LND.AGRI.ZS AG.LND.AGRI.K2
## 1 China CN CHN 2000 55.69458 5228730
## 2 China CN CHN 2001 55.75787 5234668
## 3 China CN CHN 2002 55.82113 5240607
## 4 China CN CHN 2003 55.88439 5246545
## 5 China CN CHN 2004 55.94764 5252484
## 6 China CN CHN 2005 56.01090 5258422
# Veri setinin boyutunu kontrol etme
dim(data)
## [1] 42 6
# Eksik değerleri kontrol etme
sum(is.na(data))
## [1] 0
# Veri setinin özet istatistiklerini görüntüleme
summary(data)
## country iso2c iso3c year
## Length:42 Length:42 Length:42 Min. :2000
## Class :character Class :character Class :character 1st Qu.:2005
## Mode :character Mode :character Mode :character Median :2010
## Mean :2010
## 3rd Qu.:2015
## Max. :2020
## AG.LND.AGRI.ZS AG.LND.AGRI.K2
## Min. :44.06 Min. :4030811
## 1st Qu.:44.55 1st Qu.:4074805
## Median :50.38 Median :4678195
## Mean :50.27 Mean :4666675
## 3rd Qu.:55.88 3rd Qu.:5246049
## Max. :56.26 Max. :5282176
# Görselleştirmeler
# 1. Tarımsal arazi kullanımının zaman içindeki değişimi (Zaman serisi grafiği)
plot(data$year, data$AG.LND.AGRI.ZS, type = "l", col = "blue", xlab = "Year", ylab = "Agricultural Land (% of Total Land Area)", main = "Zaman İçinde Tarım Arazisi Kullanımı")
# 2. ABD ve Çin'in tarımsal arazi kullanımının karşılaştırılması (Kutu grafiği)
boxplot(data$AG.LND.AGRI.ZS ~ data$country, data = data, col = c("red", "green"), xlab = "Country", ylab = "Agricultural Land (% of Total Land Area)", main = "ABD ve Çin Arasındaki Tarımsal Arazi Kullanımının Karşılaştırılması")
## 4- Veri Keşfi Özeti:
“explore” paketini kullanarak veri setimizi keşfettik. Başlıca değişkenlerimiz yıl ve tarımsal arazi kullanımı oranıydı. Veri setinde eksik veri bulunmadı. Tarımsal arazi kullanımının genel dağılımını inceledik ve zaman serisi grafiği ile zaman içindeki değişimini gözlemledik. Ayrıca, ABD ve Çin’in tarımsal arazi kullanımını karşılaştıran bir kutu grafiği oluşturduk.
Bu adımlar, veri setimizin genel yapısını ve temel özelliklerini anlamamıza yardımcı oldu ve ileriki analizler için önemli bir temel oluşturdu.
explore(data)
## Warning in explore_shiny(data, ...): This function can only be used in an
## interactive R session
Bu kod örneğinde, R programlama dilinde Tidyverse paketini kullanarak veri işleme ve görselleştirme sürecini gerçekleştirdik.
Veri Setini Yükleme: mtcars dahili
veri setini kullanarak başladık. Bu adımı, dışarıdan veri yüklemek
yerine doğrudan R ortamında bulunan bir veri setini kullanarak
gerçekleştirdik.
Veri Setini Düzenleme ve Temizleme: Veri setini filtreleyerek ve ilgili sütunları seçerek veriyi temizledik ve analiz için uygun hale getirdik. Örneğin, güçlü arabaları filtreleyerek ve belirli sütunları seçerek bu adımı gerçekleştirdik.
Veri Manipülasyonu: Düzenlenmiş veri setini manipüle ederek yeni sütunlar oluşturduk. Örneğin, mevcut sütunları kullanarak yeni bir hesaplama yaptık ve bu hesaplamanın sonucunu yeni bir sütuna atadık.
Veri Görselleştirme: Görselleştirmek için
ggplot2 paketini kullandık. Veri setimizi bir scatter plot
ile görselleştirdik ve x ve y eksenlerine uygun etiketler
ekledik.
Bu adımların tümü, Tidyverse paketlerini kullanarak veri işleme ve görselleştirme sürecini gerçekleştirmemizi sağladı. Bu şekilde, R’de veri analizi yapmak için güçlü ve etkili bir araç olan Tidyverse’in nasıl kullanılacağını gösterdik.
# Dahili mtcars veri setini kullanma
data <- mtcars
# Veri setini düzenleme ve temizleme (örnek)
cleaned_data <- data %>%
filter(hp > 100) %>% # Örneğin, güçlü arabaları filtreleme
select(mpg, cyl, disp) # İlgili sütunları seçme
# Veri manipülasyonu (örnek)
manipulated_data <- cleaned_data %>%
mutate(new_column = mpg * cyl) # Yeni bir sütun oluşturma (örneğin)
# Veri görselleştirme (örnek)
ggplot(manipulated_data, aes(x = mpg, y = cyl)) +
geom_point() +
labs(title = "Örnek Grafiği",
x = "Miles per Gallon",
y = "Number of Cylinders") +
theme_minimal()
dplyr ile Özet İstatistikler Hesaplama:
Veri analizi işlemlerimizde dplyr paketini kullandık.
İlk olarak, mpg sütununun ortalamasını, medyanını, minimum
ve maksimum değerlerini hesapladık. Bunun için summarize()
fonksiyonunu kullandık ve bu istatistikleri bir veri çerçevesi olarak
summary_stats adlı değişkende sakladık. Daha sonra bu
istatistikleri yazdırdık.
# 'mpg' sütunu için özet istatistikleri hesapla
summary_stats <- data %>%
summarize(mean_mpg = mean(mpg, na.rm = TRUE),
median_mpg = median(mpg, na.rm = TRUE),
min_mpg = min(mpg, na.rm = TRUE),
max_mpg = max(mpg, na.rm = TRUE))
# Özet istatistikleri yazdır
print(summary_stats)
## mean_mpg median_mpg min_mpg max_mpg
## 1 20.09062 19.2 10.4 33.9
ggplot2 ile Özet İstatistiklerin Görselleştirilmesi:
Ardından, ggplot2 paketini kullanarak bu özet
istatistikleri için bir çubuk grafik oluşturduk. İlk olarak, bu
istatistikleri içeren bir veri çerçevesi (summary_df)
oluşturduk. Sonra, bu veri çerçevesini kullanarak ggplot()
fonksiyonunu çağırarak çubuk grafik oluşturduk. Çubuk grafikte x ekseni
için istatistik türlerini (stat) ve y ekseni için değerleri
(value) kullandık. Görselleştirmeyi daha anlaşılır hale
getirmek için uygun başlık ve eksen etiketlerini ekledik.
# Özet istatistikler için bir veri çerçevesi oluştur
summary_df <- data.frame(
stat = c("Ortalama", "Medyan", "Minimum", "Maksimum"),
value = c(summary_stats$mean_mpg, summary_stats$median_mpg, summary_stats$min_mpg, summary_stats$max_mpg)
)
# Bir çubuk grafik ile özet istatistikleri görselleştirme
ggplot(summary_df, aes(x = stat, y = value)) +
geom_bar(stat = "identity", fill = "skyblue", width = 0.5) +
labs(title = "mpg Sütununun Özet İstatistikleri",
x = "İstatistik",
y = "Değer") +
theme_minimal()