- PAKETLER
- BRINCI KISIM : GIRIŞ
- 1. Tanım:
- 2. Neden Kullanıyoruz:
- 3. Önemi:
- IKINCI KISIM : PROJE HAKKINDA
- ÜÇÜNCÜ KISIM : PROJE AKIŞI
- 1. ÇALIŞMA ALANININ DİZİNİNİ AYARLAMA
- 2. GEREKLİ KÜTÜPHANELERİ KURMASI
- 3. WDI PAKETİ KULLANARAK İSVİÇRE VE HOLLANDA VERİLERİ ÇIKARTMASI
- 4. DAHA FAZLA VERİ KEŞFETME MANİPÜLASYON VE GÖRSELLEŞTİRME YAPMAK :
- 5. ŞİMDİ BİRKAÇ KARŞILAŞTIRMALI ANALİZ YAPALIM :
PAKETLER
BRINCI KISIM : GIRIŞ
1. Tanım:
R’de bir paket, R’in temel işlevlerini genişleten R fonksiyonlarını,
veri setlerini ve belgelerini içeren bir koleksiyondur. Kodu, veriyi ve
belgelemeyi bir araya getirir ve R topluluğu tarafından kolayca
paylaşılabilir ve yeniden kullanılabilir bir bütün olarak sunar. R’deki
paketler genellikle .tar.gz uzantılı sıkıştırılmış dosyalar
veya belirli işletim sistemleri için derlenmiş önceden derlenmiş ikili
dosyalar olarak dağıtılır.
2. Neden Kullanıyoruz:
R’deki paketlerin birkaç önemli amacı vardır:
İşlevselliği Genişletme: Paketler, temel R’de bulunandan daha fazla fonksiyon ve araç sağlar. Bu fonksiyonlar, veri manipülasyonundan istatistiksel analize, görselleştirmeye ve makine öğrenmesine kadar geniş bir yelpazede görevleri kapsayabilir.
Verimlilik: Paketleri kullanmak, önceden yazılmış fonksiyonlar ve algoritmalar sağlayarak kodlama verimliliğini artırabilir. R kullanıcıları, tekerleği yeniden icat etmek yerine, analizlerini ve programlama görevlerini kolaylaştırmak için paket geliştiricilerinin çalışmalarını kullanabilirler.
Topluluk Katkısı: Paketler, R kullanıcılarının kodlarını paylaşmasına ve R ekosistemine katkıda bulunmasına olanak tanır. Bu işbirlikçi yaklaşım, inovasyonu teşvik eder ve R kullanıcılarının dünya çapında bilgi alışverişi yapmasını sağlar.
Standartlaştırma: Paketler, belirli alanlarda veya analiz alanlarında kodlama uygulamalarını standartlaştırmaya ve en iyi uygulamaları teşvik etmeye yardımcı olur. Genellikle alanla ilgili bilgi ve kuralları içerirler ve kullanıcıların bu alanlarda çalışmasını kolaylaştırırlar.
3. Önemi:
Paketler, R programlama dilinin temel bir parçasıdır ve birçok nedenden dolayı önemlidir:
Esneklik: Paketler, kullanıcıların ortamını özelleştirmelerini ve belirli ihtiyaçlarına uygun hale getirmelerini sağlar. Veri analizi, istatistik modelleme veya makine öğrenimi üzerinde çalışırken, hemen hemen her göreve destek sağlayan paketler mevcuttur.
Tekrarlanabilirlik: Kodu, veriyi ve belgelemeyi kapsayan paketler, tekrarlanabilir araştırma ve analizi teşvik eder. Diğer araştırmacılar, ilgili paketi yükleyerek ve yükleyerek sonuçları çoğaltabilir ve doğrulayabilirler.
Topluluk Desteği: R paketlerinin geniş ekosistemi, kullanıcılara birçok uzmanlık alanına ve kaynağa erişim sağlar. Yardım, belge veya örnekler arıyorsanız, kullanıcılar paketler ve ilgili forumlar aracılığıyla R topluluğunun birikimine ulaşabilirler.
Ölçeklenebilirlik: Projeler karmaşıklaştıkça, paketler modüler, yeniden kullanılabilir bileşenler sağlayarak ölçeklenebilirliği artırır. Kullanıcılar, varolan paketler üzerine inşa edebilir veya kendi paketlerini geliştirebilir, kod geliştirme ve bakımında modüler bir yaklaşımı desteklerler.
Özetlemek gerekirse, paketler R programlama dilinin temel bir parçasıdır ve işlevselliği genişletme, verimliliği artırma ve R topluluğu içinde işbirliğini teşvik etme gibi önemli roller üstlenirler. Çeşitli alanlarda ve disiplinlerde araştırma, analiz ve geliştirmeyi ilerletmek için kritik bir rol oynarlar.
Bu proje, İsviçre ve Hollanda gibi iki farklı ülkeyi karşılaştırarak, çeşitli ekonomik ve sosyal göstergeler üzerinde bir karşılaştırma yapmayı amaçlamaktadır. İsviçre ve Hollanda’nın seçilmesinin nedeni, her iki ülkenin de benzer ekonomik kalkınma seviyelerine sahip olmaları ve Avrupa’daki önemli aktörler olmalarıdır. Karşılaştırmada, gayri safi yurt içi hasıla (GSYİH), nüfus, yaşam beklentisi, okuryazarlık oranı ve CO2 emisyonları gibi çeşitli göstergeler ele alınacaktır. Bu analiz, İsviçre ve Hollanda’nın ekonomik büyüme, insan yaşamı kalitesi ve çevresel etkileri gibi önemli alanlardaki farklılıkları ve benzerlikleri anlamak için bir fırsat sunacaktır.
IKINCI KISIM : PROJE HAKKINDA
Bu proje, İsviçre ve Hollanda gibi iki farklı ülkeyi karşılaştırarak, çeşitli ekonomik ve sosyal göstergeler üzerinde bir karşılaştırma yapmayı amaçlamaktadır. İsviçre ve Hollanda’nın seçilmesinin nedeni, her iki ülkenin de benzer ekonomik kalkınma seviyelerine sahip olmaları ve Avrupa’daki önemli aktörler olmalarıdır. Karşılaştırmada, gayri safi yurt içi hasıla (GSYİH), nüfus, yaşam beklentisi, okuryazarlık oranı ve CO2 emisyonları gibi çeşitli göstergeler ele alınacaktır. Bu analiz, İsviçre ve Hollanda’nın ekonomik büyüme, insan yaşamı kalitesi ve çevresel etkileri gibi önemli alanlardaki farklılıkları ve benzerlikleri anlamak için bir fırsat sunacaktır.
ÜÇÜNCÜ KISIM : PROJE AKIŞI
2. GEREKLİ KÜTÜPHANELERİ KURMASI
# Gerekli kütüphanelerin yüklenip yüklenmediğini kontrol edin, yoksa yükleyin
if (!require("WDI")) install.packages("WDI")## Loading required package: WDI
## Warning: package 'WDI' was built under R version 4.3.3
## Loading required package: ggplot2
## Warning: package 'ggplot2' was built under R version 4.3.3
## Loading required package: dplyr
## Warning: package 'dplyr' was built under R version 4.3.3
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
## Loading required package: tidyr
## Warning: package 'tidyr' was built under R version 4.3.3
## Loading required package: stringr
LIBARARY HAKKINDA
WDI:
WDIkütüphanesi, Dünya Bankası’nın Dünya Kalkınma Göstergeleri veritabanına erişim sağlar. Bu kütüphane, çeşitli sosyoekonomik göstergeleri çekmek, işlemek ve görselleştirmek için kullanılır. Örneğin, GSYİH, nüfus, eğitim harcamaları gibi verileri çekmek için kullanılabilir.ggplot2:
ggplot2kütüphanesi, R’de güçlü ve esnek bir görselleştirme aracıdır. Veriye dayalı grafik oluşturmayı kolaylaştırır ve görselleştirmelerin özelleştirilmesine olanak tanır. Özellikle, çizgi grafikleri, nokta grafikleri, histogramlar, kutu grafikleri gibi çeşitli grafik türlerini oluşturmak için kullanılır.dplyr:
dplyrkütüphanesi, veri çerçeveleri üzerinde veri işleme ve manipülasyon işlemleri için kullanılır.dplyrile filtreleme, sıralama, toplama ve gruplama gibi işlemler kolayca gerçekleştirilebilir. Bu kütüphane, veri analizi ve veri temizleme işlemlerinde sıklıkla kullanılır.tidyr:
tidyrkütüphanesi, veri çerçevelerini düzenlemek ve yeniden şekillendirmek için kullanılır. Özellikle, veri dökümü (data reshaping) işlemleri için yaygın olarak kullanılır.tidyrile sütunları satırlara dönüştürmek veya tersi işlemleri gerçekleştirmek mümkündür.stringr:
stringrkütüphanesi, metin dizeleri üzerinde işlemler yapmak için kullanılır. Metin dizelerini parçalama, birleştirme, arama ve değiştirme gibi işlemlerstringrile kolayca gerçekleştirilebilir. Bu kütüphane, metin verileri üzerinde çalışırken sıkça kullanılır.
Bu kütüphaneler, veri analizi ve görselleştirme süreçlerinde sıkça kullanılan işlevleri sağlayarak R programlamada büyük kolaylık sağlar.
Şimdi, çalışma ortamına tüm Libarary içe aktaralım :
3. WDI PAKETİ KULLANARAK İSVİÇRE VE HOLLANDA VERİLERİ ÇIKARTMASI
İSVİÇRE İLE BAŞLAYALIM:
data_switzerland <- WDI(country = "CHE", indicator = c("NY.GDP.MKTP.CD", "SP.POP.TOTL"), start = 2010, end = 2020)VERİ ÖZETİ :
## country iso2c iso3c year
## Length:11 Length:11 Length:11 Min. :2010
## Class :character Class :character Class :character 1st Qu.:2012
## Mode :character Mode :character Mode :character Median :2015
## Mean :2015
## 3rd Qu.:2018
## Max. :2020
## NY.GDP.MKTP.CD SP.POP.TOTL
## Min. :5.989e+11 Min. :7824909
## 1st Qu.:6.910e+11 1st Qu.:8043104
## Median :7.062e+11 Median :8282396
## Mean :7.000e+11 Mean :8258865
## 3rd Qu.:7.235e+11 3rd Qu.:8483084
## Max. :7.420e+11 Max. :8638167
PLOT GDP VS. YEAR :
ggplot(data = data_switzerland, aes(x = year, y = NY.GDP.MKTP.CD)) +
geom_line() +
labs(title = "GDP Trend for Switzerland", x = "Year", y = "GDP (in current USD)")
PLOT POPULATION VS. YEAR:
ggplot(data = data_switzerland, aes(x = year, y = SP.POP.TOTL)) +
geom_line() +
labs(title = "Population Trend for Switzerland", x = "Year", y = "Population")
HOLLANDA VERİLERİ :
data_netherlands <- WDI(country = "NLD", indicator = c("NY.GDP.MKTP.CD", "SP.POP.TOTL"), start = 2010, end = 2020)
summary(data_netherlands)## country iso2c iso3c year
## Length:11 Length:11 Length:11 Min. :2010
## Class :character Class :character Class :character 1st Qu.:2012
## Mode :character Mode :character Mode :character Median :2015
## Mean :2015
## 3rd Qu.:2018
## Max. :2020
## NY.GDP.MKTP.CD SP.POP.TOTL
## Min. :7.656e+11 Min. :16615394
## 1st Qu.:8.364e+11 1st Qu.:16779697
## Median :8.772e+11 Median :16939923
## Mean :8.617e+11 Mean :16986582
## 3rd Qu.:9.075e+11 3rd Qu.:17181460
## Max. :9.140e+11 Max. :17441500
ggplot(data = data_netherlands, aes(x = year, y = NY.GDP.MKTP.CD)) +
geom_line() +
labs(title = "GDP Trend for the Netherlands", x = "Year", y = "GDP (in current USD)")ggplot(data = data_netherlands, aes(x = year, y = SP.POP.TOTL)) +
geom_line() +
labs(title = "Population Trend for the Netherlands", x = "Year", y = "Population")4. DAHA FAZLA VERİ KEŞFETME MANİPÜLASYON VE GÖRSELLEŞTİRME YAPMAK :
- GSYİH Büyüme Oranını Hesapla:
data_netherlands <- data_netherlands %>%
mutate(GDP_growth_rate = (NY.GDP.MKTP.CD - lag(NY.GDP.MKTP.CD)) / lag(NY.GDP.MKTP.CD) * 100)
ggplot(data = data_netherlands, aes(x = year, y = GDP_growth_rate)) +
geom_line() +
labs(title = "GDP Growth Rate for the Netherlands", x = "Year", y = "GDP Growth Rate (%)")## Warning: Removed 1 row containing missing values or values outside the scale range
## (`geom_line()`).
-
Yıl Sütunundan Yılı Çıkart:
data_netherlands <- data_netherlands %>%
mutate(year_extracted = str_extract(year, "[0-9]{4}"))
head(data_netherlands)## country iso2c iso3c year NY.GDP.MKTP.CD SP.POP.TOTL GDP_growth_rate
## 1 Netherlands NL NLD 2010 847380859017 16615394 NA
## 2 Netherlands NL NLD 2011 905270626333 16693074 6.831611
## 3 Netherlands NL NLD 2012 838923319920 16754962 -7.329002
## 4 Netherlands NL NLD 2013 877172824535 16804432 4.559356
## 5 Netherlands NL NLD 2014 892167986714 16865008 1.709488
## 6 Netherlands NL NLD 2015 765572770634 16939923 -14.189617
## year_extracted
## 1 2010
## 2 2011
## 3 2012
## 4 2013
## 5 2014
## 6 2015
- tidyr kullanarak year_extracted sütununu sayısal olarak dönüştürün:
data_netherlands <- data_netherlands %>%
mutate(year_extracted = as.numeric(year_extracted))
head(data_netherlands)## country iso2c iso3c year NY.GDP.MKTP.CD SP.POP.TOTL GDP_growth_rate
## 1 Netherlands NL NLD 2010 847380859017 16615394 NA
## 2 Netherlands NL NLD 2011 905270626333 16693074 6.831611
## 3 Netherlands NL NLD 2012 838923319920 16754962 -7.329002
## 4 Netherlands NL NLD 2013 877172824535 16804432 4.559356
## 5 Netherlands NL NLD 2014 892167986714 16865008 1.709488
## 6 Netherlands NL NLD 2015 765572770634 16939923 -14.189617
## year_extracted
## 1 2010
## 2 2011
## 3 2012
## 4 2013
## 5 2014
## 6 2015
- GDP’yi Nüfusla Karşılaştırarak Saçılım Grafiği Çizin:
ggplot(data = data_netherlands, aes(x = NY.GDP.MKTP.CD, y = SP.POP.TOTL)) +
geom_point() +
labs(title = "GDP vs. Population for the Netherlands", x = "GDP (in current USD)", y = "Population")
ŞİMDİ AYNI İŞLEMİ İSVİÇRE İÇİN YAPIN :
data_switzerland <- data_switzerland %>%
mutate(GDP_growth_rate = (NY.GDP.MKTP.CD - lag(NY.GDP.MKTP.CD)) / lag(NY.GDP.MKTP.CD) * 100)
print("First few rows of the data with GDP growth rate:")## [1] "First few rows of the data with GDP growth rate:"
## country iso2c iso3c year NY.GDP.MKTP.CD SP.POP.TOTL GDP_growth_rate
## 1 Switzerland CH CHE 2010 598851028907 7824909 NA
## 2 Switzerland CH CHE 2011 715888126682 7912398 19.543608
## 3 Switzerland CH CHE 2012 686420221558 7996861 -4.116272
## 4 Switzerland CH CHE 2013 706234937371 8089346 2.886674
## 5 Switzerland CH CHE 2014 726537808338 8188649 2.874804
## 6 Switzerland CH CHE 2015 694118186380 8282396 -4.462207
data_switzerland <- data_switzerland %>%
mutate(year_extracted = str_extract(year, "[0-9]{4}"))
print("First few rows of the data with the new column:")## [1] "First few rows of the data with the new column:"
## country iso2c iso3c year NY.GDP.MKTP.CD SP.POP.TOTL GDP_growth_rate
## 1 Switzerland CH CHE 2010 598851028907 7824909 NA
## 2 Switzerland CH CHE 2011 715888126682 7912398 19.543608
## 3 Switzerland CH CHE 2012 686420221558 7996861 -4.116272
## 4 Switzerland CH CHE 2013 706234937371 8089346 2.886674
## 5 Switzerland CH CHE 2014 726537808338 8188649 2.874804
## 6 Switzerland CH CHE 2015 694118186380 8282396 -4.462207
## year_extracted
## 1 2010
## 2 2011
## 3 2012
## 4 2013
## 5 2014
## 6 2015
## [1] "Scatter plot of GDP vs. Population for Switzerland:"
ggplot(data = data_switzerland, aes(x = NY.GDP.MKTP.CD, y = SP.POP.TOTL)) +
geom_point() +
labs(title = "GDP vs. Population for Switzerland", x = "GDP (in current USD)", y = "Population")5. ŞİMDİ BİRKAÇ KARŞILAŞTIRMALI ANALİZ YAPALIM :
data_switzerland <- mutate(data_switzerland, GDP_growth_rate = (NY.GDP.MKTP.CD - lag(NY.GDP.MKTP.CD)) / lag(NY.GDP.MKTP.CD) * 100)
data_netherlands <- mutate(data_netherlands, GDP_growth_rate = (NY.GDP.MKTP.CD - lag(NY.GDP.MKTP.CD)) / lag(NY.GDP.MKTP.CD) * 100)
data_switzerland <- mutate(data_switzerland, population_growth_rate = (SP.POP.TOTL - lag(SP.POP.TOTL)) / lag(SP.POP.TOTL) * 100)
data_netherlands <- mutate(data_netherlands, population_growth_rate = (SP.POP.TOTL - lag(SP.POP.TOTL)) / lag(SP.POP.TOTL) * 100)
ggplot() +
geom_line(data = data_switzerland, aes(x = year, y = GDP_growth_rate, color = "Switzerland"), linetype = "solid") +
geom_line(data = data_netherlands, aes(x = year, y = GDP_growth_rate, color = "Netherlands"), linetype = "dashed") +
labs(title = "Comparative GDP Growth Rates", x = "Year", y = "GDP Growth Rate (%)", color = "Country") +
scale_color_manual(values = c("Switzerland" = "blue", "Netherlands" = "red")) +
theme_minimal()## Warning: Removed 1 row containing missing values or values outside the scale range
## (`geom_line()`).
## Removed 1 row containing missing values or values outside the scale range
## (`geom_line()`).
ggplot() +
geom_line(data = data_switzerland, aes(x = year, y = population_growth_rate, color = "Switzerland"), linetype = "solid") +
geom_line(data = data_netherlands, aes(x = year, y = population_growth_rate, color = "Netherlands"), linetype = "dashed") +
labs(title = "Comparative Population Growth Rates", x = "Year", y = "Population Growth Rate (%)", color = "Country") +
scale_color_manual(values = c("Switzerland" = "blue", "Netherlands" = "red")) +
theme_minimal()## Warning: Removed 1 row containing missing values or values outside the scale range
## (`geom_line()`).
## Removed 1 row containing missing values or values outside the scale range
## (`geom_line()`).