Econometri 2 hafta (Ders Ozeti)
Homework
soru 1
Paketler nedir ve niye kullanilir?
soru 2
5 tane ornek paket
cevap 1
- R studio bu R, istatistiksel analiz, veri manipülasyonu, grafik çizme ve raporlama gibi istatistiksel ve veri analizi görevleri için kullanılan bir programlama dilidir.
- R Studio’da kullanılan “paketler” R dilinde önceden yazılmış, genellikle belirli görevleri gerçekleştirmek için tasarlanmış fonksiyon ve araçların bir koleksiyonudur. Bu paketler, kullanıcıların belirli görevleri daha hızlı ve kolay bir şekilde gerçekleştirmelerine olanak tanır.
- paketler once kurulur sonra yuklenir ve yuklenen paketlerin kullanmak icin library komutunu kullanacagiz
cevap 2
- ggplot2: Veri görselleştirmesi için güçlü bir grafik paketi Bu paket, “Grammar of Graphics” (Grafiklerin Dilbilgisi) konseptine dayanarak, veri görselleştirmesini daha modüler ve esnek hale getirir. ggplot2 ile oluşturulan grafikler, veri setinizin yapısını ve ilişkilerini daha iyi anlamamıza yardımcı olabilir.
ggplot2 paketinin bazı önemli özellikleri şunlardır:
_Modüler Yapı: ggplot2, bir grafik oluşturmak için basit bir dilbilgisi sağlar. Bu dilbilgisi, grafikle ilgili temel bileşenleri (veri seti, estetikler, geometrik nesneler, istatistiksel dönüşümler) bir araya getirmemizi sağlar.
_Katmanlar (Layers): Bir ggplot grafiği, katmanlar halinde oluşturulur. Her katman, bir veya daha fazla veri seti, estetik özellikler, geometrik nesneler ve istatistiksel dönüşümleri içerir. Bu sayede, grafikte farklı bileşenleri kolayca birleştirebiliriz.
_Estetik Özellikler: ggplot2 ile, veri setinizin değişkenlerini grafikte renk, büyüklük, şekil vb. gibi estetik özelliklerle ilişkilendirebiliriz.
_Temalar ve Özelleştirme: Grafiklerin görünümünü özelleştirmek için bir dizi tema ve seçenek sunar. Böylece grafiklerinizi yayın kalitesinde ve görsel olarak çekici hale getirebiliriz.
## Warning: пакет 'ggplot2' был собран под R версии 4.3.3
- Veri seti olustur
- ggplot grafiği oluştur
- readr: Veri okuma ve yazma işlemleri için hızlı ve etkili bir paket. Hadley Wickham tarafından geliştirilen bu paket, veri setlerini hızlı ve düzgün bir şekilde okuma yetenekleri sunar.
readr paketinin bazı önemli özellikleri
_Hız ve Performans: readr, veri setlerini hızlı bir şekilde okuma yeteneği ile bilinir. Büyük veri setleriyle çalışırken daha etkili olabilir.
_Veri Tipleri Tanıma: readr, veri setindeki sütunların veri tiplerini otomatik olarak tanır ve uygun R veri tiplerine dönüştürür. Bu, veri setlerini doğru bir şekilde yüklemeyi kolaylaştırır.
_Delimiter ve Diğer Ayarlar: readr, varsayılan olarak virgülle ayrılmış (CSV) dosyaları okur, ancak diğer ayraçları da destekler. Ayrıca, diğer özellikleri belirtmek için bir dizi seçeneğe sahiptir.
## Warning: пакет 'readr' был собран под R версии 4.3.3
- Veriyi oku
## Warning: One or more parsing issues, call `problems()` on your data frame for details,
## e.g.:
## dat <- vroom(...)
## problems(dat)
## Rows: 2281 Columns: 1
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (1): %PDF-1.7
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
- Veriyi görüntüle
## # A tibble: 6 × 1
## `%PDF-1.7`
## <chr>
## 1 "%\xb5\xb5\xb5\xb5"
## 2 "1 0 obj"
## 3 "<</Type/Catalog/Pages 2 0 R/Lang(tr-TR) /StructTreeRoot 164 0 R/MarkInfo<</M…
## 4 "endobj"
## 5 "2 0 obj"
## 6 "<</Type/Pages/Count 24/Kids[ 3 0 R 41 0 R 48 0 R 53 0 R 58 0 R 63 0 R 68 0 R…
- lubridate: Tarih ve zaman manipülasyonu için kullanılır.Bu paket, tarihlerin ve saatlerin işlenmesi, formatlanması, aritmetik işlemler yapılması gibi birçok işlemi basitleştirir.
## Warning: пакет 'lubridate' был собран под R версии 4.3.3
##
## Присоединяю пакет: 'lubridate'
## Следующие объекты скрыты от 'package:base':
##
## date, intersect, setdiff, union
- Şu anki tarihi al
- Belirli bir tarih oluştur
- Belirli bir saat oluştur
- Tarih ve saat birleştirme
- Tarih aritmetiği
- Tarih farkı hesaplama
- Tarih formatlama
- caret: Sınıflandırma ve regresyon modelleri için bir arayüz sağlar. Bu paket, makine öğrenimi modellerini eğitme, değerlendirme, hiperparametre ayarlama ve veri ön işleme gibi bir dizi görevi kolaylaştırmak için tasarlanmıştır. Model Seçimi ve Eğitimi: caret, bir dizi önceden uyarlanmış makine öğrenimi algoritmasını destekler. train fonksiyonu aracılığıyla, veri kümenizi belirli bir modelle eğitmek için kullanabilirsiniz. Örneğin, bir destek vektör makineleri modeli eğitmek için:
## Warning: пакет 'caret' был собран под R версии 4.3.3
## Загрузка требуемого пакета: lattice
## Warning: пакет 'lattice' был собран под R версии 4.3.3
- Veri kümesini yükleme
- Destek vektör makineleri modeli eğitimi
Model Değerlendirme: caret, model performansını değerlendirmek için çeşitli metrikleri sağlar. confusionMatrix ve plot fonksiyonları gibi araçları kullanarak modelin başarı ölçütlerini görselleştirebilirsiniz. - Model performansının değerlendirilmesi
predictions <- predict(model, newdata = iris) confusionMatrix(predictions, iris$Species)
- data.table: Büyük veri setleri üzerinde hızlı ve etkili veri manipülasyonu için kullanılır. Özellikle büyük veri setleriyle çalışırken performans avantajları sağlar. data.table paketi, veri manipülasyonu için özelleştirilmiş bir syntax sunar ve bazı durumlarda base R’dan daha hızlı çalışabilir.
data.table paketinin önemli özellikleri şunlardır:
Performans: data.table paketi, büyük veri setlerinde base R’dan daha hızlı çalışabilen özel bir veri tablosu sınıfını içerir. Bu, özellikle büyük veri setleriyle çalışırken işlemleri hızlandırabilir.
Syntax Kolaylığı: data.table ile veri manipülasyonu, özel bir syntax kullanılarak gerçekleştirilir. Bu syntax, kullanıcılara base R ile karşılaştırıldığında daha açık ve kısa bir yazım sağlar.
Gruplama ve Agregasyon İşlemleri: data.table ile verileri gruplayabilir ve gruplar üzerinde agregasyon işlemleri gerçekleştirebilirsiniz. Bu, veri setinin belirli kategorilere göre analiz edilmesini sağlar.
Hızlı Sıralama İşlemleri: data.table, veri tablosunu hızlı bir şekilde sıralamak için optimize edilmiştir. Bu özellik, sıralama işlemleri gereken analizlerde performans artışı sağlar.
##
## Присоединяю пакет: 'data.table'
## Следующие объекты скрыты от 'package:lubridate':
##
## hour, isoweek, mday, minute, month, quarter, second, wday, week,
## yday, year
- Örnek bir data.table oluştur
dt <- data.table(ID = c(1, 2, 3, 4),
Name = c("John", "Jane", "Bob", "Alice"),
Age = c(25, 30, 22, 28))- Veriyi ekrana yazdır
## ID Name Age
## 1: 1 John 25
## 2: 2 Jane 30
## 3: 3 Bob 22
## 4: 4 Alice 28
- Veriyi sırala
- Gruplama ve ortalama hesaplama
## Name MeanAge
## 1: Bob 22
## 2: John 25
## 3: Alice 28
## 4: Jane 30
Ekonometri 3 hafta
- https://data.worldbank.org/indicator/SL.UEM.TOTL.ZS?view=chart
- SL.UEM.TOTL.ZS Total unemployment
- EN.POP.DNST population density
- calismamasi icin onune ## yazilir
str kodu
## 'data.frame': 16758 obs. of 6 variables:
## $ country : chr "Afghanistan" "Afghanistan" "Afghanistan" "Afghanistan" ...
## $ iso2c : chr "AF" "AF" "AF" "AF" ...
## $ iso3c : chr "AFG" "AFG" "AFG" "AFG" ...
## $ year : int 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 ...
## $ SL.UEM.TOTL.ZS: num NA NA NA NA NA NA NA NA NA NA ...
## ..- attr(*, "label")= chr "Unemployment, total (% of total labor force) (modeled ILO estimate)"
## $ EN.POP.DNST : num NA 13.5 13.8 14 14.3 ...
## ..- attr(*, "label")= chr "Population density (people per sq. km of land area)"
- iso2c ve iso3c kodladri ulkeleri 2 veya 3 lu kodlarla gosterir ve baska datalar ile birlestirebilmemiz icin kolaylik saglar
## Warning: пакет 'explore' был собран под R версии 4.3.3
## # 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 63 1960 1991 2022
## 5 SL.UEM.TOTL.ZS dbl 9239 55.1 5218 0.1 7.96 38.8
## 6 EN.POP.DNST dbl 1857 11.1 14767 0.1 294. 21595.
pipe operatoru %>%
tidyverse ve ya dplyr
## Warning: пакет 'tidyverse' был собран под R версии 4.3.3
## Warning: пакет 'forcats' был собран под R версии 4.3.3
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.3 ✔ stringr 1.5.0
## ✔ forcats 1.0.0 ✔ tibble 3.2.1
## ✔ purrr 1.0.2 ✔ tidyr 1.3.0
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::between() masks data.table::between()
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::first() masks data.table::first()
## ✖ data.table::hour() masks lubridate::hour()
## ✖ data.table::isoweek() masks lubridate::isoweek()
## ✖ dplyr::lag() masks stats::lag()
## ✖ dplyr::last() masks data.table::last()
## ✖ purrr::lift() masks caret::lift()
## ✖ data.table::mday() masks lubridate::mday()
## ✖ data.table::minute() masks lubridate::minute()
## ✖ data.table::month() masks lubridate::month()
## ✖ data.table::quarter() masks lubridate::quarter()
## ✖ data.table::second() masks lubridate::second()
## ✖ purrr::transpose() masks data.table::transpose()
## ✖ data.table::wday() masks lubridate::wday()
## ✖ data.table::week() masks lubridate::week()
## ✖ data.table::yday() masks lubridate::yday()
## ✖ data.table::year() masks lubridate::year()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
temiz veri kullanmak icin kullanilir tidyverse
## # 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 63 1960 1991 2022
## 5 SL.UEM.TOTL.ZS dbl 9239 55.1 5218 0.1 7.96 38.8
## 6 EN.POP.DNST dbl 1857 11.1 14767 0.1 294. 21595.
## Joining with `by = join_by(country, iso2c, iso3c)`
!= “” veridaen cikarmak icin == “” bunun disindakileri veriden cikarip sadece ilgili datayi gormek icin
## # 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 63 1960 1991 2022
## 5 SL.UEM.TOTL.ZS dbl 9239 55.1 5218 0.1 7.96 38.8
## 6 EN.POP.DNST dbl 1857 11.1 14767 0.1 294. 21595.
## 7 region chr 567 3.4 9 NA NA NA
## 8 capital chr 567 3.4 211 NA NA NA
## 9 longitude chr 567 3.4 211 NA NA NA
## 10 latitude chr 567 3.4 211 NA NA NA
## 11 income chr 567 3.4 7 NA NA NA
## 12 lending chr 567 3.4 6 NA NA NA
== yerine %in% kullanmaya basladi
ggplot(df_JP_CA, aes(year,SL.UEM.TOTL.ZS, color = country)) +
geom_line()+
labs( x = "year" , y= " Value", title="Unemployement rate between Canada and Japan")## Warning: Removed 62 rows containing missing values or values outside the scale range
## (`geom_line()`).