Ekonometri 2 Vize

Vize Projesi

R ve Rstudio

  • R yüklemek için bilgisi olan bir arkadaşımdan yardım aldım

  • Rpubs yükleyip kayıt oldum

  • Rmarkdown ile sunumum için uygun arka plan seçip sunumumu yapmaya başladım

Rmarkdown Projesi Hazırlama

  • Rmarkdown sistemine giriş yapıp sunumumu yapmaya başladım

  • Yaptığım sunumu sisteme yükledim

Paketler

  • R programında, paketler (packages), ek fonksiyonların, veri setlerinin, belgelerin ve diğer özelliklerin bir araya toplandığı ve paylaşıldığı birimlerdir. Bu paketler, R kullanıcılarının çeşitli analizler yapmak, görselleştirmeler oluşturmak veya başka amaçlar için kullanabilecekleri işlevsellik sağlar.

Paketler, genellikle R topluluğu tarafından oluşturulur ve paylaşılır. Her paket bir veya birkaç ana R dosyası içerir ve bu dosyalar R kodu, veri, belgeler ve bazen derlenmiş C veya C++ kodu içerebilir. Paketler, install.packages() fonksiyonu kullanılarak R ortamına yüklenebilir ve library() veya require() fonksiyonları kullanılarak yüklendikten sonra kullanılabilir.

Paketlerin kullanımı, R’nin işlevselliğini genişletmek ve tekrar kullanılabilir kod parçalarını paylaşmak için güçlü bir yol sağlar. Ayrıca, belirli bir alandaki uzmanlığı temsil eden işlevselliklerin paketler halinde sunulması, R kullanıcılarının belirli analizleri veya görevleri daha kolay gerçekleştirmesini sağlar.

Paketler Neden Önemlidir?

-R programında paketlerin önemi birkaç nedenden kaynaklanır:

  1. Fonksiyonellik Genişletme: Paketler, R kullanıcılarının R’nin temel işlevselliğini genişleterek farklı analizler yapmalarına, veri işleme işlemleri gerçekleştirmelerine veya görselleştirmeler oluşturmalarına olanak tanır. Örneğin, istatistiksel analizler için stats paketi veya veri görselleştirmesi için ggplot2 gibi paketler yaygın olarak kullanılır.

  2. Tekrar Kullanılabilir Kod Parçaları: Paketler, belirli bir alanda uzmanlık gerektiren işlevsellikleri bir araya getirir. Bu, kullanıcıların belirli bir analizi gerçekleştirmek için tekrar kullanılabilir kod parçalarını kolayca bulmalarını ve kullanmalarını sağlar. Bu, R kullanıcılarının tekrar tekrar aynı kodu yazmaktan kaçınmalarını ve daha verimli bir şekilde çalışmalarını sağlar.

  3. Topluluk Katkıları: R topluluğu, çeşitli alanlardaki uzmanlıkla ilgili paketler oluşturur ve paylaşır. Bu paketler, farklı kullanıcıların ihtiyaçlarına cevap verir ve R kullanıcılarının çeşitli problemleri çözmelerine yardımcı olur.

  4. Dokümantasyon ve Eğitim: Paketler, genellikle detaylı belgeler içerir ve kullanıcıların paketin nasıl kullanılacağına dair bilgi sağlar. Bu, kullanıcıların yeni bir işlevi veya analiz tekniğini öğrenmelerini kolaylaştırır ve R’nin kullanımını öğrenmelerine yardımcı olur.

  5. Hata Düzeltmeleri ve Güncellemeler: Paketler, düzenli olarak güncellenir ve bakım yapılır. Bu, hataların düzeltilmesini, performansın artırılmasını ve yeni özelliklerin eklenmesini sağlar. Kullanıcılar, paketlerini güncel tutarak en son özelliklerden ve düzeltmelerden yararlanabilirler.

Bu nedenlerden dolayı, R kullanıcıları genellikle belirli bir analiz veya işlem için mevcut paketleri araştırır ve uygun olanları kullanarak işlerini hızlı ve verimli bir şekilde gerçekleştirirler.

Paketler Neden Kulanılır?

  • R programında paketler, çeşitli amaçlar için kullanılır ve aşağıdaki nedenlerden dolayı önemlidir:
  1. Fonksiyonel Genişleme: Paketler, R’nin temel işlevselliğini genişleterek çeşitli analizler yapma, veri işleme işlemleri gerçekleştirme veya görselleştirme oluşturma gibi işlemleri kolaylaştırır. Her paket, özel bir işlevselliği içerir ve kullanıcıların ihtiyaçlarına göre uygun paketi seçerek işlerini daha hızlı ve etkili bir şekilde yapmalarını sağlar.

  2. Tekrar Kullanılabilir Kod Parçaları: Paketler, belirli bir alanda uzmanlık gerektiren işlevselliği bir araya getirir. Bu, kullanıcıların belirli bir analizi gerçekleştirmek için tekrar kullanılabilir kod parçalarını kolayca bulmalarını ve kullanmalarını sağlar. Bu, kodun tekrar tekrar yazılmasını önler ve R programında daha verimli bir geliştirme süreci sağlar.

  3. Topluluk Katkıları: R topluluğu, çeşitli paketler oluşturur ve paylaşır. Bu paketler, farklı alanlardaki uzmanlıkla ilgili işlevselliği sağlar. R kullanıcıları, topluluk tarafından geliştirilen paketler sayesinde farklı analizleri gerçekleştirebilir ve karmaşık sorunlara çözümler bulabilir.

  4. Dokümantasyon ve Eğitim: Paketler genellikle detaylı belgeler içerir ve kullanıcıların paketi nasıl kullanacakları hakkında bilgi sağlar. Bu, yeni bir işlevi veya analiz tekniğini öğrenmek isteyen kullanıcılar için çok değerlidir. Ayrıca, paketlerin belgelendirilmesi, R kullanıcılarının daha iyi bir şekilde kullanmalarına ve öğrenmelerine yardımcı olur.

  5. Hata Düzeltmeleri ve Güncellemeler: Paketler, düzenli olarak güncellenir ve bakım yapılır. Bu, hataların düzeltilmesini, performansın artırılmasını ve yeni özelliklerin eklenmesini sağlar. Kullanıcılar, güncellemeleri takip ederek paketlerini güncel tutabilir ve en son özelliklerden ve düzeltmelerden yararlanabilirler.

Bu nedenlerden dolayı, R kullanıcıları genellikle belirli bir analiz veya işlem için uygun paketleri araştırır ve kullanır. Paketler, R programında işlerini yapmak için güçlü ve esnek bir araç sağlar.

Beş Pakert Örneği

1)ROCR

  • ROCR, “Receiver Operating Characteristic” (Alıcı İşletim Karakteristiği) eğrilerinin analiz edilmesi ve sınıflandırma modelinin performansının değerlendirilmesi için kullanılan bir R paketidir. ROCR paketi, sınıflandırma modellerinin doğruluğunu değerlendirmek için kullanılan ROC eğrilerini oluşturmak, bu eğriler altında alanın (AUC) hesaplanması gibi yaygın olarak kullanılan metrikleri hesaplamak ve sınıflandırma modelinin performansını görselleştirmek için bir dizi fonksiyon içerir.

ROCR’nin önemi şunlardır:

  1. Sınıflandırma Modeli Performansının Değerlendirilmesi: ROCR paketi, sınıflandırma modellerinin performansını değerlendirmek için yaygın olarak kullanılan ROC eğrilerini oluşturur. Bu eğriler, sınıflandırma modelinin hassasiyeti ve özgüllüğü arasındaki ilişkiyi görselleştirir ve modelin ne kadar iyi çalıştığını anlamak için kullanılır.

  2. ROC Eğrisi Altında Alanın (AUC) Hesaplanması: ROCR, ROC eğrisi altında alan (AUC) gibi önemli bir performans ölçüsünü hesaplamak için fonksiyonlar içerir. AUC, sınıflandırma modelinin doğruluğunu tek bir sayısal değer olarak ifade eder. Yüksek AUC değerleri, modelin daha iyi performans gösterdiğini gösterir.

  3. Karşılaştırmalı Analizler Yapma: ROCR paketi, farklı sınıflandırma modellerinin performansını karşılaştırmak için kullanılabilir. Farklı modellerin ROC eğrilerini ve AUC değerlerini karşılaştırarak en iyi performansı sağlayan modeli belirlemek mümkündür.

  4. Modelin Ayarlanması ve Geliştirilmesi: ROCR paketi, sınıflandırma modellerinin performansını değerlendirirken, modelin ayarlanması ve geliştirilmesine de yardımcı olabilir. Model parametrelerini değiştirerek veya farklı özellikler ekleyerek modelin performansını iyileştirmek için ROC eğrilerini ve AUC değerlerini kullanabilirsiniz.

Bu nedenlerden dolayı, ROCR paketi, sınıflandırma modellerinin doğruluğunu değerlendirmek ve modelin performansını anlamak için önemli bir araçtır.

2)tm

  • “tm”, R programında metin madenciliği (text mining) işlemleri için kullanılan bir pakettir. “tm”, metin verilerini alıp bunları analiz etmek, özellik çıkarmak ve desenler keşfetmek için bir dizi işlev sağlar. Metin madenciliği, büyük miktarda metin verisini analiz ederek içindeki kalıpları, eğilimleri veya bilgiyi ortaya çıkarma işlemidir. Bu nedenle, “tm” paketi, metin verileri üzerinde çeşitli analizler yapmak için kullanılan bir araçtır.

“tm” paketinin önemi şu şekilde özetlenebilir:

  1. Metin Verileri İşleme: “tm” paketi, metin belgelerini içe aktarma, temizleme, dönüştürme ve biçimlendirme gibi temel işlemleri gerçekleştirmek için işlevler sağlar. Bu, metin verilerinin analizine hazırlık için önemli bir adımdır.

  2. Özellik Çıkarma: “tm” paketi, metin verilerinden farklı özellikleri çıkarmak için kullanılır. Kelime frekansı, terim frekansı-inverse belge frekansı (TF-IDF), n-gramlar gibi özellikler, metin belgelerinin içerdiği bilgiyi temsil etmek için kullanılabilir.

  3. Metin Madenciliği Algoritmaları Uygulama: “tm” paketi, metin verileri üzerinde çeşitli madencilik algoritmalarını uygulamak için işlevler sağlar. Metin belgeleri üzerinde kümelenme, sınıflandırma, duyarlılık analizi gibi analizler yapabilir ve metin verileri üzerinde anlamlı bilgi elde edebilirsiniz.

  4. Bilgi Keşfi ve Desenlerin Tanımlanması: “tm” paketi, metin verileri içindeki desenleri tanımlamak ve içindeki bilgiyi ortaya çıkarmak için kullanılır. Bu, müşteri yorumlarından duygu analizi yapmak, haber makalelerinden anahtar kelimeleri çıkarmak veya belirli bir konu hakkında trendleri tanımlamak gibi birçok farklı uygulamada kullanılabilir.

  5. Karar Destek ve Otomatik Karar Alma: “tm” paketi, büyük metin veri kümelerini analiz ederek karar destek sistemlerini veya otomatik karar alma sistemlerini beslemek için kullanılabilir. Örneğin, müşteri geri bildirimlerinden çıkarılan bilgiler, pazarlama stratejilerini yönlendirmek için kullanılabilir.

Bu nedenlerden dolayı, “tm” paketi, metin verilerinin analizi ve içerdiği bilginin anlaşılması için önemli bir araçtır ve birçok farklı alanda kullanılır.

3)Shiny

  • Shiny, R programında interaktif web tabanlı uygulamalar oluşturmak için kullanılan bir pakettir. Shiny, R kullanıcılarının veri analizi sonuçlarını görselleştirebileceği veya etkileşimli analizler yapabileceği interaktif arayüzler oluşturmak için kullanılır. Bu interaktif uygulamalar, kullanıcıların veriye göre filtreleme yapmalarını, grafiklerde etkileşimde bulunmalarını veya parametrelerle oynamalarını sağlayarak veri analizini daha anlaşılır ve erişilebilir hale getirir.

Shiny’nin önemi şu şekilde özetlenebilir:

  1. Veri Analizinin Erişilebilir Hale Getirilmesi: Shiny, veri analizi sonuçlarını daha geniş bir kitleye erişilebilir hale getirir. Kullanıcılar, veri analizi sonuçlarını anlamak ve yorumlamak için kod yazma veya R ortamını anlama becerisine sahip olmak zorunda değildir; basit ve kullanıcı dostu bir arayüz üzerinden veriye erişebilirler.

  2. Etkileşimli Analiz: Shiny, kullanıcılara veri analizi sonuçları üzerinde etkileşimli olarak çalışma imkanı sağlar. Kullanıcılar, grafiklerde gezinerek veya parametreleri değiştirerek analiz sonuçlarını anlamak için kendi ihtiyaçlarına göre özelleştirilmiş görünümler oluşturabilirler.

  3. Gerçek Zamanlı Analiz: Shiny uygulamaları gerçek zamanlı olarak çalışır, yani veri değiştiğinde veya parametreler güncellendiğinde uygulama otomatik olarak yenilenir. Bu, kullanıcıların anlık olarak güncel verilere ve analiz sonuçlarına erişmelerini sağlar.

  4. Kullanıcı Odaklılık: Shiny, kullanıcı odaklı bir yaklaşımı benimser. Kullanıcıların ihtiyaçlarına ve beceri düzeylerine uygun olarak, farklı seviyelerde karmaşıklıkta ve özelleştirme seçeneklerinde uygulamalar oluşturabilirsiniz.

  5. Kolay Entegrasyon: Shiny uygulamaları, R kodu ve paketlerini kullanarak oluşturulur ve bu nedenle mevcut R analizlerinizle kolayca entegre edilebilir.

Shiny, R kullanıcılarının veri analizi sonuçlarını daha etkili bir şekilde görselleştirmesini, anlamasını ve paylaşmasını sağlayan güçlü bir araçtır. Bu nedenle, Shiny, veri analizi topluluğunda çok önemli bir yer tutar ve yaygın olarak kullanılır.

4)lattice

-lattice, R programında grafikler oluşturmak için kullanılan bir pakettir. lattice, üst düzey bir grafik dilidir ve kullanıcıların çeşitli veri görselleştirme işlemleri yapmalarını sağlar. lattice paketi, özellikle çoklu panel grafikler oluşturmak için kullanılır ve bu grafikler, birden fazla değişkenin etkileşimini görselleştirmek için kullanılır. lattice, temel olarak Trellis grafikleri adı verilen yapıyı kullanarak grafikler oluşturur.

lattice’nin önemi şu şekilde özetlenebilir:

  1. Çoklu Panel Grafikler Oluşturma: lattice, birden fazla değişkenin etkileşimini görselleştirmek için çoklu panel grafikler oluşturmak için ideal bir araçtır. Bu, veri setinizdeki değişkenler arasındaki ilişkileri anlamak için faydalıdır.

  2. Farklı Veri Türlerini Görselleştirme: lattice, kategorik, sürekli veya karmaşık veri türlerini görselleştirmek için kullanılabilir. Bu, farklı türde veri setlerindeki yapıları ve ilişkileri keşfetmek için kullanışlıdır.

  3. Esneklik ve Özelleştirme: lattice, grafiklerin görünümünü ve davranışını özelleştirmek için bir dizi parametre sağlar. Kullanıcılar, renkler, eksen etiketleri, başlık ve alt başlıklar gibi grafik öğelerini kişiselleştirebilirler.

  4. Raporlama ve Sunumlar İçin Uygunluk: lattice ile oluşturulan grafikler, raporlar ve sunumlar için uygun ve etkili görseller sunar. Çoklu panel grafikler, bir veri analizi sürecinin sonuçlarını görsel olarak sunmak için sıkça kullanılır.

  5. Veri Keşfi ve Anlama: lattice ile oluşturulan grafikler, veri setlerindeki desenleri ve ilişkileri daha iyi anlamak için kullanılabilir. Bu, veri analiz sürecinin önemli bir parçası olan veri keşfi aşamasında faydalıdır.

Sonuç olarak, lattice, R kullanıcılarına veri görselleştirmesi için güçlü bir araç sağlar ve veri setlerindeki yapıları ve ilişkileri daha iyi anlamalarına yardımcı olur. Bu nedenle, lattice, R programında yaygın olarak kullanılan ve önemli bir pakettir.

5)reshape2

  • reshape2, R programında veri dönüştürme ve yeniden yapılandırma işlemleri için kullanılan bir pakettir. Bu paket, veri çerçevelerini farklı biçimlere dönüştürmek ve veri yapılarını yeniden yapılandırmak için işlevler sağlar. reshape2 paketinin temel amacı, veri analizi ve görselleştirme süreçlerinde veri dönüşümüne yardımcı olmaktır.

reshape2 paketinin önemi şu şekilde özetlenebilir:

  1. Veri Yapısının Dönüştürülmesi: reshape2, veri çerçevelerini uzun (long) ve geniş (wide) formatlar arasında dönüştürmek için işlevler sağlar. Bu, veri analizi süreçlerinde farklı veri yapıları arasında geçiş yapmayı kolaylaştırır ve farklı analiz tekniklerini uygulamak için veri yapısını uygun hale getirir.

  2. Veri Özetleme ve Agregasyon: reshape2, veri çerçevelerini özetlemek ve özet istatistikler hesaplamak için kullanılabilir. Örneğin, melt() işlevi ile veri çerçevelerini topluca özetlemek veya dcast() işlevi ile özetleme işlemleri gerçekleştirmek mümkündür.

  3. Görselleştirme İçin Uygun Veri Yapısının Oluşturulması: reshape2, ggplot2 gibi diğer paketlerle birlikte kullanılarak veri görselleştirmesi için uygun veri yapılarının oluşturulmasına yardımcı olur. Bu, veri çerçevelerini doğrudan ggplot2 grafiklerine giriş olarak kullanmak için kolaylık sağlar.

  4. Genişletilebilirlik ve Esneklik: reshape2 paketi, geniş bir kullanım alanına sahip bir dizi işlev içerir ve veri dönüşümü için esnek bir yaklaşım sunar. Kullanıcılar, veri dönüşüm işlemlerini özelleştirmek ve gereksinimlerine uygun hale getirmek için bu işlevleri kullanabilirler.

  5. Kodun Daha Anlaşılır Olması: reshape2 işlevleri, veri dönüşüm işlemlerini açık ve anlaşılır bir şekilde gerçekleştirmeyi kolaylaştırır. Bu, R kodunun daha okunabilir ve bakımı daha kolay hale gelmesine yardımcı olur.

Bu nedenlerden dolayı, reshape2 paketi, R kullanıcılarının veri analizi süreçlerini daha etkili ve verimli hale getiren önemli bir araçtır.

Ticari Mal Ticareti Arjantin & Belçika

## install.packages(WDI)
library(WDI)
data_WDI <- WDI(country = "all", indicator = c("TG.VAL.TOTL.GD.ZS", "SP.POP.TOTL"), start = 2000)
str(data_WDI)
## 'data.frame':    6384 obs. of  6 variables:
##  $ country          : chr  "Afghanistan" "Afghanistan" "Afghanistan" "Afghanistan" ...
##  $ iso2c            : chr  "AF" "AF" "AF" "AF" ...
##  $ iso3c            : chr  "AFG" "AFG" "AFG" "AFG" ...
##  $ year             : int  2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 ...
##  $ TG.VAL.TOTL.GD.ZS: num  NA NA 66.7 49.7 47.5 ...
##   ..- attr(*, "label")= chr "Merchandise trade (% of GDP)"
##  $ SP.POP.TOTL      : num  19542982 19688632 21000256 22645130 23553551 ...
##   ..- attr(*, "label")= chr "Population, total"
## install.packages("explore")
library(explore)
describe_all(data_WDI)
## # A tibble: 6 × 8
##   variable          type     na na_pct unique     min        mean         max
##   <chr>             <chr> <int>  <dbl>  <int>   <dbl>       <dbl>       <dbl>
## 1 country           chr       0    0      266   NA           NA           NA 
## 2 iso2c             chr       0    0      266   NA           NA           NA 
## 3 iso3c             chr       0    0      262   NA           NA           NA 
## 4 year              int       0    0       24 2000         2012.        2023 
## 5 TG.VAL.TOTL.GD.ZS dbl     754   11.8   5551    7.81        62.7        421.
## 6 SP.POP.TOTL       dbl     289    4.5   6047 9609    285615032.  7950946801
## install.packages("tidyverse")
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
## ✔ ggplot2   3.5.0     ✔ tibble    3.2.1
## ✔ lubridate 1.9.3     ✔ tidyr     1.3.1
## ✔ purrr     1.0.2     
## ── 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
data_WDI %>% describe_all()
## # A tibble: 6 × 8
##   variable          type     na na_pct unique     min        mean         max
##   <chr>             <chr> <int>  <dbl>  <int>   <dbl>       <dbl>       <dbl>
## 1 country           chr       0    0      266   NA           NA           NA 
## 2 iso2c             chr       0    0      266   NA           NA           NA 
## 3 iso3c             chr       0    0      262   NA           NA           NA 
## 4 year              int       0    0       24 2000         2012.        2023 
## 5 TG.VAL.TOTL.GD.ZS dbl     754   11.8   5551    7.81        62.7        421.
## 6 SP.POP.TOTL       dbl     289    4.5   6047 9609    285615032.  7950946801
ekkbilgi <- WDI_data$country
toplamdf <- left_join(data_WDI, ekkbilgi)
## Joining with `by = join_by(country, iso2c, iso3c)`
toplamdf %>% describe_all()
## # A tibble: 12 × 8
##    variable          type     na na_pct unique     min        mean         max
##    <chr>             <chr> <int>  <dbl>  <int>   <dbl>       <dbl>       <dbl>
##  1 country           chr       0    0      266   NA           NA           NA 
##  2 iso2c             chr       0    0      266   NA           NA           NA 
##  3 iso3c             chr       0    0      262   NA           NA           NA 
##  4 year              int       0    0       24 2000         2012.        2023 
##  5 TG.VAL.TOTL.GD.ZS dbl     754   11.8   5551    7.81        62.7        421.
##  6 SP.POP.TOTL       dbl     289    4.5   6047 9609    285615032.  7950946801 
##  7 region            chr     216    3.4      9   NA           NA           NA 
##  8 capital           chr     216    3.4    211   NA           NA           NA 
##  9 longitude         chr     216    3.4    211   NA           NA           NA 
## 10 latitude          chr     216    3.4    211   NA           NA           NA 
## 11 income            chr     216    3.4      7   NA           NA           NA 
## 12 lending           chr     216    3.4      6   NA           NA           NA
## install.packages("dplyr")
library(dplyr)
toplamdf_subset <- subset(toplamdf, year >=2000 & year <= 2020)
## install.packages("scales")
library(scales)
## 
## Attaching package: 'scales'
## The following object is masked from 'package:purrr':
## 
##     discard
## The following object is masked from 'package:readr':
## 
##     col_factor
names(toplamdf_subset)
##  [1] "country"           "iso2c"             "iso3c"            
##  [4] "year"              "TG.VAL.TOTL.GD.ZS" "SP.POP.TOTL"      
##  [7] "region"            "capital"           "longitude"        
## [10] "latitude"          "income"            "lending"
library(ggplot2)
eksikdegerler <- toplamdf[is.na(toplamdf$TG.VAL.TOTL.GD.ZS),]
olmayan_degerler <- toplamdf %>% group_by(country) %>%  
  summarise(kayip = sum(is.na(TG.VAL.TOTL.GD.ZS)))
data <- left_join(toplamdf, olmayan_degerler)
## Joining with `by = join_by(country)`
data_Belçika <- data %>% filter(iso2c == "BE")
library(ggplot2)
ggplot(data_Belçika, aes(x = year, y = TG.VAL.TOTL.GD.ZS)) + 
  geom_line(colour = "blue")
## Warning: Removed 1 row containing missing values or values outside the scale range
## (`geom_line()`).

dff_kesitveri <- data %>% filter(year==2022)
ggplot(dff_kesitveri, aes(x= SP.POP.TOTL, y=TG.VAL.TOTL.GD.ZS)) + 
  geom_point(colour = "yellow") +
  geom_text(label=dff_kesitveri$iso2c)
## Warning: Removed 23 rows containing missing values or values outside the scale range
## (`geom_point()`).
## Warning: Removed 23 rows containing missing values or values outside the scale range
## (`geom_text()`).

dunya_datasi <- data %>%
  group_by(year) %>%
  summarise(ticarimalticareti = sum(TG.VAL.TOTL.GD.ZS),
            dunyanufusu = sum(SP.POP.TOTL),
            herseneicinticaret = ticarimalticareti/dunyanufusu)
ggplot(dunya_datasi, aes(x = year, y = ticarimalticareti)) +
  geom_line(colour = "red") +
  labs(title = "Ticari Mal Ticareti",
       x = "yıl",
       y = "Mal ticareti") +
  theme_light()
## Warning: Removed 24 rows containing missing values or values outside the scale range
## (`geom_line()`).