Spaceship Titanic

Predict which passengers are transported to an alternate dimension

Welcome to the year 2912, where your data science skills are needed to solve a cosmic mystery. We’ve received a transmission from four lightyears away and things aren’t looking good.

The Spaceship Titanic was an interstellar passenger liner launched a month ago. With almost 13,000 passengers on board, the vessel set out on its maiden voyage transporting emigrants from our solar system to three newly habitable exoplanets orbiting nearby stars.

While rounding Alpha Centauri en route to its first destination—the torrid 55 Cancri E—the unwary Spaceship Titanic collided with a spacetime anomaly hidden within a dust cloud. Sadly, it met a similar fate as its namesake from 1000 years before. Though the ship stayed intact, almost half of the passengers were transported to an alternate dimension!

To help rescue crews and retrieve the lost passengers, you are challenged to predict which passengers were transported by the anomaly using records recovered from the spaceship’s damaged computer system.

Dataset Description

In this competition your task is to predict whether a passenger was transported to an alternate dimension during the Spaceship Titanic’s collision with the spacetime anomaly. To help you make these predictions, you’re given a set of personal records recovered from the ship’s damaged computer system.

File and Data Field Descriptions

train.csv - Personal records for about two-thirds (~8700) of the passengers, to be used as training data.

PassengerId - A unique Id for each passenger. Each Id takes the form gggg_pp where gggg indicates a group the passenger is travelling with and pp is their number within the group. People in a group are often family members, but not always.

HomePlanet - The planet the passenger departed from, typically their planet of permanent residence.

CryoSleep - Indicates whether the passenger elected to be put into suspended animation for the duration of the voyage. Passengers in cryosleep are confined to their cabins.

Cabin - The cabin number where the passenger is staying. Takes the form deck/num/side, where side can be either P for Port or S for Starboard.

Destination - The planet the passenger will be debarking to. Age - The age of the passenger.

VIP - Whether the passenger has paid for special VIP service during the voyage. RoomService, FoodCourt, ShoppingMall, Spa, VRDeck - Amount the passenger has billed at each of the Spaceship Titanic’s many luxury amenities.

Name - The first and last names of the passenger.

Transported - Whether the passenger was transported to another dimension. This is the target, the column you are trying to predict.

test.csv - Personal records for the remaining one-third (~4300) of the passengers, to be used as test data. Your task is to predict the value of Transported for the passengers in this set.

sample_submission.csv - A submission file in the correct format.

PassengerId - Id for each passenger in the test set.

Transported - The target. For each passenger, predict either True or False.

Download Data

Data yüklemek

library(readr): readr paketini yükler. Bu paket, hızlı ve etkili bir şekilde metin tabanlı veri dosyalarını okumak için kullanılır.

read_csv(“train.csv”): “train.csv” dosyasını okur ve içerisindeki veriyi bir veri çerçevesine yükler. Bu dosya genellikle bir eğitim veri setini temsil eder.

read_csv(“test.csv”): “test.csv” dosyasını okur ve içerisindeki veriyi bir veri çerçevesine yükler. Bu dosya genellikle bir test veri setini temsil eder.

Sonuç olarak, “train” ve “test” veri çerçeveleri, ilgili CSV dosyalarındaki veriyle doldurulmuş olur.

library(readr)
train <- read_csv("train.csv")
## Rows: 8693 Columns: 14
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (5): PassengerId, HomePlanet, Cabin, Destination, Name
## dbl (6): Age, RoomService, FoodCourt, ShoppingMall, Spa, VRDeck
## lgl (3): CryoSleep, VIP, Transported
## 
## ℹ 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.
test <- read_csv("test.csv")
## Rows: 4277 Columns: 13
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (5): PassengerId, HomePlanet, Cabin, Destination, Name
## dbl (6): Age, RoomService, FoodCourt, ShoppingMall, Spa, VRDeck
## lgl (2): CryoSleep, VIP
## 
## ℹ 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.

Bu R dilindeki kod satırı, tidyverse paket koleksiyonunu yükler.

library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ purrr     1.0.2
## ✔ forcats   1.0.0     ✔ stringr   1.5.1
## ✔ ggplot2   3.4.4     ✔ tibble    3.2.1
## ✔ lubridate 1.9.3     ✔ tidyr     1.3.0
## ── 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

Bu R dilindeki kod satırı, explore paketini yükler.

library(explore)

Bu R dilindeki kod parçası (dplyr)

train %>% describe_all()
## # A tibble: 14 × 8
##    variable     type     na na_pct unique   min   mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl>  <dbl> <dbl>
##  1 PassengerId  chr       0    0     8693    NA  NA       NA
##  2 HomePlanet   chr     201    2.3      4    NA  NA       NA
##  3 CryoSleep    lgl     217    2.5      3     0   0.36     1
##  4 Cabin        chr     199    2.3   6561    NA  NA       NA
##  5 Destination  chr     182    2.1      4    NA  NA       NA
##  6 Age          dbl     179    2.1     81     0  28.8     79
##  7 VIP          lgl     203    2.3      3     0   0.02     1
##  8 RoomService  dbl     181    2.1   1274     0 225.   14327
##  9 FoodCourt    dbl     183    2.1   1508     0 458.   29813
## 10 ShoppingMall dbl     208    2.4   1116     0 174.   23492
## 11 Spa          dbl     183    2.1   1328     0 311.   22408
## 12 VRDeck       dbl     188    2.2   1307     0 305.   24133
## 13 Name         chr     200    2.3   8474    NA  NA       NA
## 14 Transported  lgl       0    0        2     0   0.5      1

Verielrin gözlemlerini yerleri dolduralım(ailenum ve ailesira)fertlerine göre düzeltelim

train için

train[c("ailenum", "ailesira")] <- str_split_fixed(train$PassengerId, "_", 2)

yeni değişken ailenumarı Verielrin gözlemlerini yerleri dolduralım(ailenum ve ailesira)fertlerine göre düzeltelim bunun çalıştırdınız zaman ik ayır çalışıyor %50 ailenum ve %50 ailesşra ailenum passenge ıd bun i.in ayırlıgııza &50 passenger i.inde test için

test[c("ailenum", "ailesira")] <- str_split_fixed(test$PassengerId, "_", 2)

test (cabin ayırps sıralaman )

Cabinden bilgi çıkrımak(sütüünlrfi)

train[c('deck', 'num', 'side')] <- str_split_fixed(train$Cabin, '/', 3)

test (cabin ayırps sıralaman )

Cabinden bilgi çıkrımak(sütüünlrfi)

Cabinden bilgi çıkrımak(sütüünlrfi)

test için

test[c('deck', 'num', 'side')] <- str_split_fixed(test$Cabin, '/', 3)

veri setinizdeki boş değerleri nasıl ele almanız gerektiği veri setinizin özelliklerine ve analiz hedeflerinize bağlıdır. train için

train[train == ''] <- NA

test için veri setinizdeki boş değerleri nasıl ele almanız gerektiği veri setinizin özelliklerine ve analiz hedeflerinize bağlıdır.

test[test == ''] <- NA

Bu R dilindeki kod parçası, dplyr paketini kullanarak bir veri çerçevesinin tüm değişkenleri için temel istatistikleri elde etmeye çalışır. Ancak, describe_all()

train %>% describe_all()
## # A tibble: 19 × 8
##    variable     type     na na_pct unique   min   mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl>  <dbl> <dbl>
##  1 PassengerId  chr       0    0     8693    NA  NA       NA
##  2 HomePlanet   chr     201    2.3      4    NA  NA       NA
##  3 CryoSleep    lgl     217    2.5      3     0   0.36     1
##  4 Cabin        chr     199    2.3   6561    NA  NA       NA
##  5 Destination  chr     182    2.1      4    NA  NA       NA
##  6 Age          dbl     179    2.1     81     0  28.8     79
##  7 VIP          lgl     203    2.3      3     0   0.02     1
##  8 RoomService  dbl     181    2.1   1274     0 225.   14327
##  9 FoodCourt    dbl     183    2.1   1508     0 458.   29813
## 10 ShoppingMall dbl     208    2.4   1116     0 174.   23492
## 11 Spa          dbl     183    2.1   1328     0 311.   22408
## 12 VRDeck       dbl     188    2.2   1307     0 305.   24133
## 13 Name         chr     200    2.3   8474    NA  NA       NA
## 14 Transported  lgl       0    0        2     0   0.5      1
## 15 ailenum      chr       0    0     6217    NA  NA       NA
## 16 ailesira     chr       0    0        8    NA  NA       NA
## 17 deck         chr     199    2.3      9    NA  NA       NA
## 18 num          chr     199    2.3   1818    NA  NA       NA
## 19 side         chr     199    2.3      3    NA  NA       NA

library(DataExplorer)
create_report(train)
## 
## 
## processing file: report.rmd
## 
  |                                           
  |                                     |   0%
  |                                           
  |.                                    |   2%                                 
  |                                           
  |..                                   |   5% [global_options]                
  |                                           
  |...                                  |   7%                                 
  |                                           
  |....                                 |  10% [introduce]                     
  |                                           
  |....                                 |  12%                                 
  |                                           
  |.....                                |  14% [plot_intro]                    
  |                                           
  |......                               |  17%                                 
  |                                           
  |.......                              |  19% [data_structure]                
  |                                           
  |........                             |  21%                                 
  |                                           
  |.........                            |  24% [missing_profile]               
  |                                           
  |..........                           |  26%                                 
  |                                           
  |...........                          |  29% [univariate_distribution_header]
  |                                           
  |...........                          |  31%                                 
  |                                           
  |............                         |  33% [plot_histogram]                
  |                                           
  |.............                        |  36%                                 
  |                                           
  |..............                       |  38% [plot_density]                  
  |                                           
  |...............                      |  40%                                 
  |                                           
  |................                     |  43% [plot_frequency_bar]            
  |                                           
  |.................                    |  45%                                 
  |                                           
  |..................                   |  48% [plot_response_bar]             
  |                                           
  |..................                   |  50%                                 
  |                                           
  |...................                  |  52% [plot_with_bar]                 
  |                                           
  |....................                 |  55%                                 
  |                                           
  |.....................                |  57% [plot_normal_qq]                
  |                                           
  |......................               |  60%                                 
  |                                           
  |.......................              |  62% [plot_response_qq]              
  |                                           
  |........................             |  64%                                 
  |                                           
  |.........................            |  67% [plot_by_qq]                    
  |                                           
  |..........................           |  69%                                 
  |                                           
  |..........................           |  71% [correlation_analysis]          
  |                                           
  |...........................          |  74%                                 
  |                                           
  |............................         |  76% [principal_component_analysis]  
  |                                           
  |.............................        |  79%                                 
  |                                           
  |..............................       |  81% [bivariate_distribution_header] 
  |                                           
  |...............................      |  83%                                 
  |                                           
  |................................     |  86% [plot_response_boxplot]         
  |                                           
  |.................................    |  88%                                 
  |                                           
  |.................................    |  90% [plot_by_boxplot]               
  |                                           
  |..................................   |  93%                                 
  |                                           
  |...................................  |  95% [plot_response_scatterplot]     
  |                                           
  |.................................... |  98%                                 
  |                                           
  |.....................................| 100% [plot_by_scatterplot]           
## output file: C:/Users/HP/OneDrive - Karabuk University/Bureau/Final Projesi 8/report.knit.md
## "C:/Program Files/RStudio/resources/app/bin/quarto/bin/tools/pandoc" +RTS -K512m -RTS "C:\Users\HP\ONEDRI~1\Bureau\FINALP~1\REPORT~1.MD" --to html4 --from markdown+autolink_bare_uris+tex_math_single_backslash --output pandoc2868205d4f02.html --lua-filter "C:\Users\HP\AppData\Local\R\cache\R\renv\cache\v5\R-4.3\x86_64-w64-mingw32\rmarkdown\2.25\d65e35823c817f09f4de424fcdfa812a\rmarkdown\rmarkdown\lua\pagebreak.lua" --lua-filter "C:\Users\HP\AppData\Local\R\cache\R\renv\cache\v5\R-4.3\x86_64-w64-mingw32\rmarkdown\2.25\d65e35823c817f09f4de424fcdfa812a\rmarkdown\rmarkdown\lua\latex-div.lua" --embed-resources --standalone --variable bs3=TRUE --section-divs --table-of-contents --toc-depth 6 --template "C:\Users\HP\AppData\Local\R\cache\R\renv\cache\v5\R-4.3\x86_64-w64-mingw32\rmarkdown\2.25\d65e35823c817f09f4de424fcdfa812a\rmarkdown\rmd\h\default.html" --no-highlight --variable highlightjs=1 --variable theme=yeti --mathjax --variable "mathjax-url=https://mathjax.rstudio.com/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML" --include-in-header "C:\Users\HP\AppData\Local\Temp\RtmpAjgTXR\rmarkdown-str286824303a2f.html"
## 
## Output created: report.html

Açıklaması Inglızce Graphique à barres (avec fréquence) ## 4 columns ignored with more than 50 categories. ## PassengerId: 8693 categories ## Name: 8474 categories ## ailenum: 6217 categories ## num: 1818 categories

Açıklama Turkçe olarak ##4 sütun ihmal edildi. ##50’den fazla kategori içeren ##PassengerId: 8693 kategori ##Name: 8474 kategori ##ailenum: 6217 kategori ##num: 1818 kategori”

Artık (Cbine)ihtıyacım kalamadiği için kaldırıyorum

test için

train <- train %>% select(-Cabin)

Artık (Cbine)ihtıyacım kalamadiği için kaldırıyorum

train için

test <- test %>% select(-Cabin)

Bu R dilindeki kod parçası, dplyr paketini kullanarak bir veri çerçevesinin tüm değişkenleri için temel istatistikleri elde etmeye çalışır. Ancak, describe_all() fonksiyonu direkt olarak dplyr paketinde bulunmamaktadır.

train %>% describe_all()
## # A tibble: 18 × 8
##    variable     type     na na_pct unique   min   mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl>  <dbl> <dbl>
##  1 PassengerId  chr       0    0     8693    NA  NA       NA
##  2 HomePlanet   chr     201    2.3      4    NA  NA       NA
##  3 CryoSleep    lgl     217    2.5      3     0   0.36     1
##  4 Destination  chr     182    2.1      4    NA  NA       NA
##  5 Age          dbl     179    2.1     81     0  28.8     79
##  6 VIP          lgl     203    2.3      3     0   0.02     1
##  7 RoomService  dbl     181    2.1   1274     0 225.   14327
##  8 FoodCourt    dbl     183    2.1   1508     0 458.   29813
##  9 ShoppingMall dbl     208    2.4   1116     0 174.   23492
## 10 Spa          dbl     183    2.1   1328     0 311.   22408
## 11 VRDeck       dbl     188    2.2   1307     0 305.   24133
## 12 Name         chr     200    2.3   8474    NA  NA       NA
## 13 Transported  lgl       0    0        2     0   0.5      1
## 14 ailenum      chr       0    0     6217    NA  NA       NA
## 15 ailesira     chr       0    0        8    NA  NA       NA
## 16 deck         chr     199    2.3      9    NA  NA       NA
## 17 num          chr     199    2.3   1818    NA  NA       NA
## 18 side         chr     199    2.3      3    NA  NA       NA

Bu ifade, “HomePlanet” sütunundaki benzersiz değerleri bulur. Yani, her bir farklı değeri bir kez içeren bir vektör elde edersiniz.

unique(train$HomePlanet)
## [1] "Europa" "Earth"  "Mars"   NA

levels(train$HomePlanet) ifadesi, “train” veri çerçevesindeki “HomePlanet” adlı sütunun faktör tipinde olduğu varsayımı altında bu faktörün kategorik seviyelerini (levels) döndürür.

levels(train$HomePlanet)
## NULL

train$HomePlanet: Bu ifade, “train” veri çerçevesindeki “HomePlanet” sütununa erişir.

train içiç

train$HomePlanet <- addNA(train$HomePlanet)

test için

train$HomePlanet: Bu ifade, “train” veri çerçevesindeki “HomePlanet” sütununa erişir.

test$HomePlanet <- addNA(test$HomePlanet)

levels(train$HomePlanet) ifadesi, “train” veri çerçevesindeki “HomePlanet” adlı sütunun faktör tipinde olduğu varsayımı altında bu faktörün kategorik seviyelerini (levels) döndürür.

levels(train$HomePlanet )
## [1] "Earth"  "Europa" "Mars"   NA

train için levels(train\(HomePlanet)[is.na(levels(train\)HomePlanet))] <- “NA”: Bu ifade, NA değerleri içeren kategorik seviyeleri “NA” karakter dizisi ile değiştirir.

levels(train$HomePlanet)[is.na(levels(train$HomePlanet))] <- "NA"

test için levels(train\(HomePlanet)[is.na(levels(train\)HomePlanet))] <- “NA”: Bu ifade, NA değerleri içeren kategorik seviyeleri “NA” karakter dizisi ile değiştirir.

levels(test$HomePlanet)[is.na(levels(test$HomePlanet))] <- "NA"

Bu ifade, “HomePlanet” sütununun faktör olduğunu varsayarak, bu faktörün içinde bulunan benzersiz kategorik seviyeleri döndürür.

levels(train$HomePlanet)
## [1] "Earth"  "Europa" "Mars"   "NA"

Bu R dilindeki kod parçası, dplyr paketini kullanarak bir veri çerçevesinin tüm değişkenleri için temel istatistikleri elde etmeye çalışır.

train %>% describe_all()
## # A tibble: 18 × 8
##    variable     type     na na_pct unique   min   mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl>  <dbl> <dbl>
##  1 PassengerId  chr       0    0     8693    NA  NA       NA
##  2 HomePlanet   fct       0    0        4    NA  NA       NA
##  3 CryoSleep    lgl     217    2.5      3     0   0.36     1
##  4 Destination  chr     182    2.1      4    NA  NA       NA
##  5 Age          dbl     179    2.1     81     0  28.8     79
##  6 VIP          lgl     203    2.3      3     0   0.02     1
##  7 RoomService  dbl     181    2.1   1274     0 225.   14327
##  8 FoodCourt    dbl     183    2.1   1508     0 458.   29813
##  9 ShoppingMall dbl     208    2.4   1116     0 174.   23492
## 10 Spa          dbl     183    2.1   1328     0 311.   22408
## 11 VRDeck       dbl     188    2.2   1307     0 305.   24133
## 12 Name         chr     200    2.3   8474    NA  NA       NA
## 13 Transported  lgl       0    0        2     0   0.5      1
## 14 ailenum      chr       0    0     6217    NA  NA       NA
## 15 ailesira     chr       0    0        8    NA  NA       NA
## 16 deck         chr     199    2.3      9    NA  NA       NA
## 17 num          chr     199    2.3   1818    NA  NA       NA
## 18 side         chr     199    2.3      3    NA  NA       NA

train için Bu ifade, gruplanmış veri çerçevesindeki “Age” sütunundaki eksik değerleri, o sütundaki değerlerin ortalaması ile doldurur.

train <- train %>%
  group_by(HomePlanet,Destination) %>%
  mutate_at(vars(Age) ,~replace_na(., mean(., na.rm = TRUE)))

test için Bu ifade, gruplanmış veri çerçevesindeki “Age” sütunundaki eksik değerleri, o sütundaki değerlerin ortalaması ile doldurur.

test <- test %>%
  group_by(HomePlanet,Destination) %>%
  mutate_at(vars(Age) ,~replace_na(., mean(., na.rm = TRUE)))

Bu R dilindeki kod parçası, dplyr paketini kullanarak bir veri çerçevesinin tüm değişkenleri için temel istatistikleri elde etmeye çalışır. Ancak, describe_all() fonksiyonu direkt olarak dplyr paketinde bulunmamaktadır.

train %>% describe_all()
## # A tibble: 18 × 8
##    variable     type     na na_pct unique   min   mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl>  <dbl> <dbl>
##  1 PassengerId  chr       0    0     8693    NA  NA       NA
##  2 HomePlanet   fct       0    0        4    NA  NA       NA
##  3 CryoSleep    lgl     217    2.5      3     0   0.36     1
##  4 Destination  chr     182    2.1      4    NA  NA       NA
##  5 Age          dbl       0    0       91     0  28.8     79
##  6 VIP          lgl     203    2.3      3     0   0.02     1
##  7 RoomService  dbl     181    2.1   1274     0 225.   14327
##  8 FoodCourt    dbl     183    2.1   1508     0 458.   29813
##  9 ShoppingMall dbl     208    2.4   1116     0 174.   23492
## 10 Spa          dbl     183    2.1   1328     0 311.   22408
## 11 VRDeck       dbl     188    2.2   1307     0 305.   24133
## 12 Name         chr     200    2.3   8474    NA  NA       NA
## 13 Transported  lgl       0    0        2     0   0.5      1
## 14 ailenum      chr       0    0     6217    NA  NA       NA
## 15 ailesira     chr       0    0        8    NA  NA       NA
## 16 deck         chr     199    2.3      9    NA  NA       NA
## 17 num          chr     199    2.3   1818    NA  NA       NA
## 18 side         chr     199    2.3      3    NA  NA       NA

train için

Bu R dilindeki kod, “train” veri çerçevesindeki “CryoSleep” adlı bir değişkenin içindeki eksik değerleri (NA) ekleyerek, bu eksik değerlere özel bir etiket eklemeyi amaçlar.

train$CryoSleep <- addNA(train$CryoSleep)

test için Bu R dilindeki kod, “train” veri çerçevesindeki “CryoSleep” adlı bir değişkenin içindeki eksik değerleri (NA) ekleyerek, bu eksik değerlere özel bir etiket eklemeyi amaçlar.

test$CryoSleep <- addNA(test$CryoSleep)

train için Bu R dilindeki kod, “test” veri çerçevesindeki “CryoSleep” adlı bir değişkenin içindeki eksik değerleri (NA) ekleyerek, bu eksik değerlere özel bir etiket eklemeyi amaçlar.

levels(train$CryoSleep)[is.na(levels(train$CryoSleep))] <- "NA"

test için Bu R dilindeki kod, “test” veri çerçevesindeki “CryoSleep” adlı bir değişkenin içindeki eksik değerleri (NA) ekleyerek, bu eksik değerlere özel bir etiket eklemeyi amaçlar.

levels(test$CryoSleep)[is.na(levels(test$CryoSleep))] <- "NA"

Bu R dilindeki kod parçası, dplyr paketini kullanarak bir veri çerçevesinin tüm değişkenleri için temel istatistikleri elde etmeye çalışır. Ancak, describe_all() fonksiyonu direkt olarak dplyr paketinde bulunmamaktadır.

train %>% describe_all()
## # A tibble: 18 × 8
##    variable     type     na na_pct unique   min   mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl>  <dbl> <dbl>
##  1 PassengerId  chr       0    0     8693    NA  NA       NA
##  2 HomePlanet   fct       0    0        4    NA  NA       NA
##  3 CryoSleep    fct       0    0        3    NA  NA       NA
##  4 Destination  chr     182    2.1      4    NA  NA       NA
##  5 Age          dbl       0    0       91     0  28.8     79
##  6 VIP          lgl     203    2.3      3     0   0.02     1
##  7 RoomService  dbl     181    2.1   1274     0 225.   14327
##  8 FoodCourt    dbl     183    2.1   1508     0 458.   29813
##  9 ShoppingMall dbl     208    2.4   1116     0 174.   23492
## 10 Spa          dbl     183    2.1   1328     0 311.   22408
## 11 VRDeck       dbl     188    2.2   1307     0 305.   24133
## 12 Name         chr     200    2.3   8474    NA  NA       NA
## 13 Transported  lgl       0    0        2     0   0.5      1
## 14 ailenum      chr       0    0     6217    NA  NA       NA
## 15 ailesira     chr       0    0        8    NA  NA       NA
## 16 deck         chr     199    2.3      9    NA  NA       NA
## 17 num          chr     199    2.3   1818    NA  NA       NA
## 18 side         chr     199    2.3      3    NA  NA       NA

veri çerçevesindeki “Destination” adlı sütunun içindeki benzersiz (unique) değerleri döndürür.

unique(train$Destination)
## [1] "TRAPPIST-1e"   "PSO J318.5-22" "55 Cancri e"   NA

train için veri çerçevesindeki “Destination” adlı bir değişkenin içindeki eksik değerlere (NA) özel bir etiket eklemeyi amaçlar. Bu işlem, Destination sütunundaki her bir NA değerini belirli bir etiketle değiştirmek için kullanılır.

train$Destination <- addNA(train$Destination)

test için veri çerçevesindeki “Destination” adlı bir değişkenin içindeki eksik değerlere (NA) özel bir etiket eklemeyi amaçlar. Bu işlem, Destination sütunundaki her bir NA değerini belirli bir etiketle değiştirmek için kullanılır.

test$Destination <- addNA(test$Destination)

train için Bu ifade, “HomePlanet” sütununun faktör olduğunu varsayarak, bu faktörün içinde bulunan benzersiz kategorik seviyeleri (levels) döndürür.

levels(train$Destination)[is.na(levels(train$Destination))] <- "NA"

test için Bu ifade, “HomePlanet” sütununun faktör olduğunu varsayarak, bu faktörün içinde bulunan benzersiz kategorik seviyeleri (levels) döndürür.

levels(test$Destination)[is.na(levels(test$Destination))] <- "NA"

train için veri çerçevesindeki “side” adlı bir değişkenin içindeki eksik değerlere (NA) özel bir etiket eklemeyi amaçlar

train$side <- addNA(train$side)

test için veri çerçevesindeki “side” adlı bir değişkenin içindeki eksik değerlere (NA) özel bir etiket eklemeyi amaçlar

test$side <- addNA(test$side)

train için train$side: Bu ifade, “train” veri çerçevesindeki “side” adlı sütuna erişir.

levels(train$side): Bu ifade, “side” sütununun faktör olduğunu varsayarak, bu faktörün içinde bulunan benzersiz kategorik seviyeleri döndürür.

is.na(levels(train$side)): Bu ifade, “side” sütunundaki kategorik seviyeler içinde NA (eksik) değerlerin olup olmadığını kontrol eder.

levels(train\(side)[is.na(levels(train\)side))]: Bu ifade, içinde NA değerleri bulunan kategorik seviyelere erişir.

levels(train\(side)[is.na(levels(train\)side))] <- “NA”: Bu ifade, NA değerleri içeren kategorik seviyeleri “NA” karakter dizisi ile değiştirir.

levels(train$side)[is.na(levels(train$side))] <- "NA"

test için train$side: Bu ifade, “train” veri çerçevesindeki “side” adlı sütuna erişir.

levels(train$side): Bu ifade, “side” sütununun faktör olduğunu varsayarak, bu faktörün içinde bulunan benzersiz kategorik seviyeleri döndürür.

is.na(levels(train$side)): Bu ifade, “side” sütunundaki kategorik seviyeler içinde NA (eksik) değerlerin olup olmadığını kontrol eder.

levels(train\(side)[is.na(levels(train\)side))]: Bu ifade, içinde NA değerleri bulunan kategorik seviyelere erişir.

levels(train\(side)[is.na(levels(train\)side))] <- “NA”: Bu ifade, NA değerleri içeren kategorik seviyeleri “NA” karakter dizisi ile değiştirir.

levels(test$side)[is.na(levels(test$side))] <- "NA"

train %>% describe_all() ifadesi, R dilindeki psych paketini kullanarak bir veri çerçevesinin tüm değişkenleri için temel istatistikleri elde etmeye yönelik bir işlem zincirini ifade eder. Ancak, bu fonksiyon doğrudan mevcut bir describe_all() fonksiyonunu içermez.

train %>% describe_all()
## # A tibble: 18 × 8
##    variable     type     na na_pct unique   min   mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl>  <dbl> <dbl>
##  1 PassengerId  chr       0    0     8693    NA  NA       NA
##  2 HomePlanet   fct       0    0        4    NA  NA       NA
##  3 CryoSleep    fct       0    0        3    NA  NA       NA
##  4 Destination  fct       0    0        4    NA  NA       NA
##  5 Age          dbl       0    0       91     0  28.8     79
##  6 VIP          lgl     203    2.3      3     0   0.02     1
##  7 RoomService  dbl     181    2.1   1274     0 225.   14327
##  8 FoodCourt    dbl     183    2.1   1508     0 458.   29813
##  9 ShoppingMall dbl     208    2.4   1116     0 174.   23492
## 10 Spa          dbl     183    2.1   1328     0 311.   22408
## 11 VRDeck       dbl     188    2.2   1307     0 305.   24133
## 12 Name         chr     200    2.3   8474    NA  NA       NA
## 13 Transported  lgl       0    0        2     0   0.5      1
## 14 ailenum      chr       0    0     6217    NA  NA       NA
## 15 ailesira     chr       0    0        8    NA  NA       NA
## 16 deck         chr     199    2.3      9    NA  NA       NA
## 17 num          chr     199    2.3   1818    NA  NA       NA
## 18 side         fct       0    0        3    NA  NA       NA

train için veri çerçevesindeki “VIP” adlı bir değişkenin içindeki eksik değerlere (NA) özel bir etiket eklemeyi amaçlar. Bu işlem, “VIP” sütunundaki her bir NA değerini belirli bir etiketle değiştirmek için kullanılır.

train$VIP <- addNA(train$VIP)

test için veri çerçevesindeki “VIP” adlı bir değişkenin içindeki eksik değerlere (NA) özel bir etiket eklemeyi amaçlar. Bu işlem, “VIP” sütunundaki her bir NA değerini belirli bir etiketle değiştirmek için kullanılır.

test$VIP <- addNA(test$VIP)

train için Bu R dilindeki kod, “train” veri çerçevesindeki “VIP” adlı bir değişkenin içindeki eksik değerlere (NA) özel bir etiket eklemeyi amaçlar.

levels(train$VIP )[is.na(levels(train$VIP))] <- "NA"

test için Bu R dilindeki kod, “train” veri çerçevesindeki “VIP” adlı bir değişkenin içindeki eksik değerlere (NA) özel bir etiket eklemeyi amaçlar.

levels(test$VIP )[is.na(levels(test$VIP))] <- "NA"

train için Bu ifade, gruplanmış veri çerçevesindeki “Age” sütunundaki eksik değerleri, o sütundaki değerlerin ortalaması ile doldurur.

train <- train %>%
  group_by(Destination) %>%
  mutate_at(vars(Age) ,~replace_na(., mean(., na.rm = TRUE)))

test için Bu ifade, gruplanmış veri çerçevesindeki “Age” sütunundaki eksik değerleri, o sütundaki değerlerin ortalaması ile doldurur.

test <- test %>%
  group_by(Destination) %>%
  mutate_at(vars(Age) ,~replace_na(., mean(., na.rm = TRUE)))

paketini kullanarak bir veri çerçevesinin tüm değişkenleri için temel istatistikleri elde etmeye yönelik bir işlem zincirini ifade eder.

train %>% describe_all()
## # A tibble: 18 × 8
##    variable     type     na na_pct unique   min  mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl> <dbl> <dbl>
##  1 PassengerId  chr       0    0     8693    NA  NA      NA
##  2 HomePlanet   fct       0    0        4    NA  NA      NA
##  3 CryoSleep    fct       0    0        3    NA  NA      NA
##  4 Destination  fct       0    0        4    NA  NA      NA
##  5 Age          dbl       0    0       91     0  28.8    79
##  6 VIP          fct       0    0        3    NA  NA      NA
##  7 RoomService  dbl     181    2.1   1274     0 225.  14327
##  8 FoodCourt    dbl     183    2.1   1508     0 458.  29813
##  9 ShoppingMall dbl     208    2.4   1116     0 174.  23492
## 10 Spa          dbl     183    2.1   1328     0 311.  22408
## 11 VRDeck       dbl     188    2.2   1307     0 305.  24133
## 12 Name         chr     200    2.3   8474    NA  NA      NA
## 13 Transported  lgl       0    0        2     0   0.5     1
## 14 ailenum      chr       0    0     6217    NA  NA      NA
## 15 ailesira     chr       0    0        8    NA  NA      NA
## 16 deck         chr     199    2.3      9    NA  NA      NA
## 17 num          chr     199    2.3   1818    NA  NA      NA
## 18 side         fct       0    0        3    NA  NA      NA

train” veri çerçevesindeki “FoodCourt” adlı bir değişkenin dağılımını gösteren bir histogram oluşturmayı amaçlar. hist fonksiyonu, bir sayısal değişkenin değerlerinin dağılımını görselleştirmek için kullanılır.

hist(train$FoodCourt)

train için Bu ifade, “train” veri çerçevesini işlem zinciri (pipe) ile başlatır. Bu, bir işlemi diğerine bağlamak için dplyr paketinin %>% operatörünü kullanır.

train <- train %>% mutate(FoodCourt = coalesce(FoodCourt, 0))

test için Bu ifade, “train” veri çerçevesini işlem zinciri (pipe) ile başlatır. Bu, bir işlemi diğerine bağlamak için dplyr paketinin %>% operatörünü kullanır.

test <- test %>% mutate(FoodCourt = coalesce(FoodCourt, 0))

Bu R dilindeki kod, dplyr paketinin describe_all fonksiyonunu kullanarak bir veri çerçevesinin (data frame) tüm değişkenlerinin temel istatistik özetini oluşturmayı amaçlar.

train %>% describe_all()
## # A tibble: 18 × 8
##    variable     type     na na_pct unique   min  mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl> <dbl> <dbl>
##  1 PassengerId  chr       0    0     8693    NA  NA      NA
##  2 HomePlanet   fct       0    0        4    NA  NA      NA
##  3 CryoSleep    fct       0    0        3    NA  NA      NA
##  4 Destination  fct       0    0        4    NA  NA      NA
##  5 Age          dbl       0    0       91     0  28.8    79
##  6 VIP          fct       0    0        3    NA  NA      NA
##  7 RoomService  dbl     181    2.1   1274     0 225.  14327
##  8 FoodCourt    dbl       0    0     1507     0 448.  29813
##  9 ShoppingMall dbl     208    2.4   1116     0 174.  23492
## 10 Spa          dbl     183    2.1   1328     0 311.  22408
## 11 VRDeck       dbl     188    2.2   1307     0 305.  24133
## 12 Name         chr     200    2.3   8474    NA  NA      NA
## 13 Transported  lgl       0    0        2     0   0.5     1
## 14 ailenum      chr       0    0     6217    NA  NA      NA
## 15 ailesira     chr       0    0        8    NA  NA      NA
## 16 deck         chr     199    2.3      9    NA  NA      NA
## 17 num          chr     199    2.3   1818    NA  NA      NA
## 18 side         fct       0    0        3    NA  NA      NA

train için Bu R dilindeki kod, dplyr paketini kullanarak bir veri çerçevesinin (data frame) var olan veya eksik (NA) değerlerini doldurmayı amaçlar. Kodun amacı, ShoppingMall, Spa, ve VRDeck adlı üç değişkendeki eksik değerleri, sırasıyla, ShoppingMall değişkeninin değeri ile, Spa değişkenindeki eksik değerleri sıfır ile, ve VRDeck değişkenindeki eksik değerleri sıfır ile doldurarak yeni bir train veri çerçevesi oluşturmaktır.

train <- train %>% mutate(ShoppingMall = coalesce(ShoppingMall), Spa = coalesce(Spa, 0), VRDeck = coalesce(VRDeck, 0))

test için Bu R dilindeki kod, dplyr paketini kullanarak bir veri çerçevesinin (data frame) var olan veya eksik (NA) değerlerini doldurmayı amaçlar. Kodun amacı, ShoppingMall, Spa, ve VRDeck adlı üç değişkendeki eksik değerleri, sırasıyla, ShoppingMall değişkeninin değeri ile, Spa değişkenindeki eksik değerleri sıfır ile, ve VRDeck değişkenindeki eksik değerleri sıfır ile doldurarak yeni bir train veri çerçevesi oluşturmaktır.

test <- test %>% mutate(ShoppingMall = coalesce(ShoppingMall), Spa = coalesce(Spa, 0), VRDeck = coalesce(VRDeck, 0))

Bu R dilindeki kod, dplyr paketinin describe_all fonksiyonunu kullanarak bir veri çerçevesinin (data frame) tüm değişkenlerinin temel istatistik özetini oluşturmayı amaçlar.

train %>% describe_all()
## # A tibble: 18 × 8
##    variable     type     na na_pct unique   min  mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl> <dbl> <dbl>
##  1 PassengerId  chr       0    0     8693    NA  NA      NA
##  2 HomePlanet   fct       0    0        4    NA  NA      NA
##  3 CryoSleep    fct       0    0        3    NA  NA      NA
##  4 Destination  fct       0    0        4    NA  NA      NA
##  5 Age          dbl       0    0       91     0  28.8    79
##  6 VIP          fct       0    0        3    NA  NA      NA
##  7 RoomService  dbl     181    2.1   1274     0 225.  14327
##  8 FoodCourt    dbl       0    0     1507     0 448.  29813
##  9 ShoppingMall dbl     208    2.4   1116     0 174.  23492
## 10 Spa          dbl       0    0     1327     0 305.  22408
## 11 VRDeck       dbl       0    0     1306     0 298.  24133
## 12 Name         chr     200    2.3   8474    NA  NA      NA
## 13 Transported  lgl       0    0        2     0   0.5     1
## 14 ailenum      chr       0    0     6217    NA  NA      NA
## 15 ailesira     chr       0    0        8    NA  NA      NA
## 16 deck         chr     199    2.3      9    NA  NA      NA
## 17 num          chr     199    2.3   1818    NA  NA      NA
## 18 side         fct       0    0        3    NA  NA      NA

train için

Bu R dilindeki kod, dplyr paketini kullanarak bir veri çerçevesinden belirli bir değişkeni (sütunu) çıkarmayı amaçlar. Bu kodun amacı, train adlı veri çerçevesinden Name adlı değişkeni çıkartarak güncellenmiş bir veri çerçevesi oluşturmaktır.

train <- train %>% select(-Name)

test için

Bu R dilindeki kod, dplyr paketini kullanarak bir veri çerçevesinden belirli bir değişkeni (sütunu) çıkarmayı amaçlar. Bu kodun amacı, train adlı veri çerçevesinden Name adlı değişkeni çıkartarak güncellenmiş bir veri çerçevesi oluşturmaktır.

test <- test %>% select(-Name)

Bu R dilindeki kod, dplyr paketinin describe_all fonksiyonunu kullanarak bir veri çerçevesinin (data frame) tüm değişkenlerinin temel istatistik özetini oluşturmayı amaçlar.

train %>% describe_all()
## # A tibble: 17 × 8
##    variable     type     na na_pct unique   min  mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl> <dbl> <dbl>
##  1 PassengerId  chr       0    0     8693    NA  NA      NA
##  2 HomePlanet   fct       0    0        4    NA  NA      NA
##  3 CryoSleep    fct       0    0        3    NA  NA      NA
##  4 Destination  fct       0    0        4    NA  NA      NA
##  5 Age          dbl       0    0       91     0  28.8    79
##  6 VIP          fct       0    0        3    NA  NA      NA
##  7 RoomService  dbl     181    2.1   1274     0 225.  14327
##  8 FoodCourt    dbl       0    0     1507     0 448.  29813
##  9 ShoppingMall dbl     208    2.4   1116     0 174.  23492
## 10 Spa          dbl       0    0     1327     0 305.  22408
## 11 VRDeck       dbl       0    0     1306     0 298.  24133
## 12 Transported  lgl       0    0        2     0   0.5     1
## 13 ailenum      chr       0    0     6217    NA  NA      NA
## 14 ailesira     chr       0    0        8    NA  NA      NA
## 15 deck         chr     199    2.3      9    NA  NA      NA
## 16 num          chr     199    2.3   1818    NA  NA      NA
## 17 side         fct       0    0        3    NA  NA      NA

train için Bu R dilindeki kod, addNA fonksiyonunu kullanarak bir veri çerçevesindeki belirli bir değişkenin içindeki eksik (NA) değerleri eklemeyi amaçlar. Eğer belirli bir değişkenin içinde eksik değer (NA) varsa, addNA fonksiyonu bu eksik değerleri ekleyerek yeni bir kategori oluşturur.

train$deck <- addNA(train$deck)

test için Bu R dilindeki kod, addNA fonksiyonunu kullanarak bir veri çerçevesindeki belirli bir değişkenin içindeki eksik (NA) değerleri eklemeyi amaçlar. Eğer belirli bir değişkenin içinde eksik değer (NA) varsa, addNA fonksiyonu bu eksik değerleri ekleyerek yeni bir kategori oluşturu

test$deck <- addNA(test$deck)

train için Bu R dilindeki kod, bir faktör değişkenin seviyelerindeki (levels) eksik değerleri “NA” olarak değiştirmeyi amaçlar. Aşağıda bu kodun açıklamalarını bulabilirsiniz:

levels(train$deck )[is.na(levels(train$deck))] <- "NA"

test için Bu R dilindeki kod, bir faktör değişkenin seviyelerindeki (levels) eksik değerleri “NA” olarak değiştirmeyi amaçlar. Aşağıda bu kodun açıklamalarını bulabilirsiniz:

levels(test$deck )[is.na(levels(test$deck))] <- "NA"

Bu R dilindeki kod, dplyr paketinin describe_all fonksiyonunu kullanarak bir veri çerçevesinin (data frame) tüm değişkenlerinin temel istatistik özetini oluşturmayı amaçlar.

train %>% describe_all()
## # A tibble: 17 × 8
##    variable     type     na na_pct unique   min  mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl> <dbl> <dbl>
##  1 PassengerId  chr       0    0     8693    NA  NA      NA
##  2 HomePlanet   fct       0    0        4    NA  NA      NA
##  3 CryoSleep    fct       0    0        3    NA  NA      NA
##  4 Destination  fct       0    0        4    NA  NA      NA
##  5 Age          dbl       0    0       91     0  28.8    79
##  6 VIP          fct       0    0        3    NA  NA      NA
##  7 RoomService  dbl     181    2.1   1274     0 225.  14327
##  8 FoodCourt    dbl       0    0     1507     0 448.  29813
##  9 ShoppingMall dbl     208    2.4   1116     0 174.  23492
## 10 Spa          dbl       0    0     1327     0 305.  22408
## 11 VRDeck       dbl       0    0     1306     0 298.  24133
## 12 Transported  lgl       0    0        2     0   0.5     1
## 13 ailenum      chr       0    0     6217    NA  NA      NA
## 14 ailesira     chr       0    0        8    NA  NA      NA
## 15 deck         fct       0    0        9    NA  NA      NA
## 16 num          chr     199    2.3   1818    NA  NA      NA
## 17 side         fct       0    0        3    NA  NA      NA

Bu R dilindeki kod, dplyr paketinin describe_all fonksiyonunu kullanarak bir veri çerçevesinin (data frame) tüm değişkenlerinin temel istatistik özetini oluşturmayı amaçlar.

test %>% describe_all()
## # A tibble: 16 × 8
##    variable     type     na na_pct unique   min  mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl> <dbl> <dbl>
##  1 PassengerId  chr       0    0     4277    NA  NA      NA
##  2 HomePlanet   fct       0    0        4    NA  NA      NA
##  3 CryoSleep    fct       0    0        3    NA  NA      NA
##  4 Destination  fct       0    0        4    NA  NA      NA
##  5 Age          dbl       0    0       91     0  28.7    79
##  6 VIP          fct       0    0        3    NA  NA      NA
##  7 RoomService  dbl      82    1.9    843     0 219.  11567
##  8 FoodCourt    dbl       0    0      902     0 429.  25273
##  9 ShoppingMall dbl      98    2.3    716     0 177.   8292
## 10 Spa          dbl       0    0      833     0 296.  19844
## 11 VRDeck       dbl       0    0      796     0 305.  22272
## 12 ailenum      chr       0    0     3063    NA  NA      NA
## 13 ailesira     chr       0    0        8    NA  NA      NA
## 14 deck         fct       0    0        9    NA  NA      NA
## 15 num          chr     100    2.3   1506    NA  NA      NA
## 16 side         fct       0    0        3    NA  NA      NA

train için

Bu R dilindeki kod, bir veri çerçevesinde yer alan ailenum adlı bir değişkenin üzerinde işlem yaparak, bu değişkenin bir alt kümesinde tekrarlanan değerlere (duplicate) göre yeni bir değişken oluşturmayı amaçlar.

train$ailes <- ifelse(duplicated(train$ailenum) | duplicated(train$ailenum, fromLast = TRUE), 1.0, 0.0)

test için Bu R dilindeki kod, bir veri çerçevesinde yer alan ailenum adlı bir değişkenin üzerinde işlem yaparak, bu değişkenin bir alt kümesinde tekrarlanan değerlere (duplicate) göre yeni bir değişken oluşturmayı amaçlar.

test$ailes <- ifelse(duplicated(test$ailenum) | duplicated(test$ailenum, fromLast = TRUE), 1.0, 0.0)

Bu R dilindeki kod, bir veri çerçevesinin belirli bir alt kümesini ve belirli değişkenleri görüntülemeyi amaçlar. İşte bu kodun açıklamaları:

head(train[, c("PassengerId", "ailenum", "ailesira", "ailes")], 20)
## # A tibble: 20 × 4
##    PassengerId ailenum ailesira ailes
##    <chr>       <chr>   <chr>    <dbl>
##  1 0001_01     0001    01           0
##  2 0002_01     0002    01           0
##  3 0003_01     0003    01           1
##  4 0003_02     0003    02           1
##  5 0004_01     0004    01           0
##  6 0005_01     0005    01           0
##  7 0006_01     0006    01           1
##  8 0006_02     0006    02           1
##  9 0007_01     0007    01           0
## 10 0008_01     0008    01           1
## 11 0008_02     0008    02           1
## 12 0008_03     0008    03           1
## 13 0009_01     0009    01           0
## 14 0010_01     0010    01           0
## 15 0011_01     0011    01           0
## 16 0012_01     0012    01           0
## 17 0014_01     0014    01           0
## 18 0015_01     0015    01           0
## 19 0016_01     0016    01           0
## 20 0017_01     0017    01           1

test için Atrık (ailenum , ailesira ve num) ihtiyacım olmadiği için kaldriyorum

train <- train %>% select(-c(ailenum, ailesira, num))

test için Atrık (ailenum , ailesira ve num) ihtiyacım olmadiği için kaldriyorum

test <- test %>% select(-c(ailenum, ailesira, num))

Bu R dilindeki kod, dplyr paketinin describe_all fonksiyonunu kullanarak bir veri çerçevesinin (data frame) tüm değişkenlerinin temel istatistik özetini oluşturmayı amaçlar

train %>% describe_all()
## # A tibble: 15 × 8
##    variable     type     na na_pct unique   min   mean   max
##    <chr>        <chr> <int>  <dbl>  <int> <dbl>  <dbl> <dbl>
##  1 PassengerId  chr       0    0     8693    NA  NA       NA
##  2 HomePlanet   fct       0    0        4    NA  NA       NA
##  3 CryoSleep    fct       0    0        3    NA  NA       NA
##  4 Destination  fct       0    0        4    NA  NA       NA
##  5 Age          dbl       0    0       91     0  28.8     79
##  6 VIP          fct       0    0        3    NA  NA       NA
##  7 RoomService  dbl     181    2.1   1274     0 225.   14327
##  8 FoodCourt    dbl       0    0     1507     0 448.   29813
##  9 ShoppingMall dbl     208    2.4   1116     0 174.   23492
## 10 Spa          dbl       0    0     1327     0 305.   22408
## 11 VRDeck       dbl       0    0     1306     0 298.   24133
## 12 Transported  lgl       0    0        2     0   0.5      1
## 13 deck         fct       0    0        9    NA  NA       NA
## 14 side         fct       0    0        3    NA  NA       NA
## 15 ailes        dbl       0    0        2     0   0.45     1

LOGİSTİC REGRESİYON

Logistik regresyonun katsayıları, ilgili bağımsız değişkenin bağımlı değişken üzerindeki etkisini belirtir. Pozitif bir katsayı, bağımsız değişkenin arttığında bağımlı değişkenin olasılığının arttığını gösterir. Negatif bir katsayı ise bağımsız değişkenin arttığında bağımlı değişkenin olasılığının azaldığını gösterir.

train için Bu R dilindeki kod, bir veri çerçevesinden belirli bir sütun aralığını (2. sütundan 15. sütuna kadar olan sütunlar) seçmeyi amaçlar. İşte bu kodun açıklamaları: train: Bu, üzerinde işlem yapılacak olan veri çerçevesini temsil eder. [2:15]: Bu ifade, veri çerçevesindeki sütunları seçmek için kullanılır. Burada 2:15, 2. sütundan başlayarak 15. sütuna kadar olan tüm sütunları seçer.

train_set <- train[2:15]

test için Bu R dilindeki kod, bir veri çerçevesinden belirli bir sütun aralığını (2. sütundan 15. sütuna kadar olan sütunlar) seçmeyi amaçlar. İşte bu kodun açıklamaları: train: Bu, üzerinde işlem yapılacak olan veri çerçevesini temsil eder. [2:15]: Bu ifade, veri çerçevesindeki sütunları seçmek için kullanılır. Burada 2:15, 2. sütundan başlayarak 15. sütuna kadar olan tüm sütunları seçer

test_set <- test[2:14]

Bu R dilindeki kod, veri bölme işlemini gerçekleştirmek için caTools paketini kullanır. Veri setini eğitim ve test setlerine ayırmak, genellikle bir modeli eğitmek ve ardından modelin performansını değerlendirmek için kullanılır. İşte kodun açıklamaları: library(caTools): Bu ifade, caTools paketini yükler. Bu paket, rastgele veri bölme işlemi yapmak için kullanılır.

library(caTools)
set.seed(123)
split = sample.split(train_set$Transported, SplitRatio = 0.75)
training_set = subset(train_set, split == TRUE)
testing_set = subset(train_set, split == FALSE)

Bu R dilindeki kod, bir lojistik regresyon modelini oluşturmayı amaçlar. İşte bu kodun açıklamaları:

logistic = glm(formula = Transported ~ ., family = binomial, data = training_set)
## Warning: glm.fit: des probabilités ont été ajustées numériquement à 0 ou 1

Bu R dilindeki kod, lojistik regresyon modelini oluştururken, optimize edici algoritmanın iterasyon sayısını sınırlamak için maxit parametresini kullanmayı amaçlar. İşte bu kodun açıklamaları:

logistic = glm(formula = Transported ~ ., family = binomial, data = training_set, control = list(maxit = 100))
## Warning: glm.fit: des probabilités ont été ajustées numériquement à 0 ou 1

Bu R dilindeki kod, oluşturulan lojistik regresyon modeli (logistic modeli) kullanılarak test seti üzerindeki gözlemler için olasılık tahminleri elde etmeyi amaçlar. İşte bu kodun açıklamaları:

prob_pred = predict(logistic, type = 'response', newdata = testing_set[-11])
## Warning in predict.lm(object, newdata, se.fit, scale = 1, type = if (type == :
## prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases

Bu R dilindeki kod, belirli bir eşik değeri üzerinden elde edilen olasılık tahminlerini temel alarak sınıflandırma yapmayı amaçlar. İşte bu kodun açıklamaları:

y_Pred = ifelse(prob_pred > 0.5, 1.0, 0.0)

Bu R dilindeki kod, test setindeki gerçek sınıf etiketlerini (y_true) oluşturmayı amaçlar. İşte bu kodun açıklamaları:

y_true <- ifelse(testing_set[11] == TRUE, 1,0)

Bu R dilindeki kod, bir karışıklık matrisi (confusion matrix) oluşturmayı amaçlar. Karışıklık matrisi, bir sınıflandırma modelinin performansını değerlendirmek için kullanılır ve gerçek ve tahmin edilen sınıfların sayılarını gösterir. İşte bu kodun açıklamaları:

cm = table(y_true, y_Pred)

Bu R dilindeki kod, önceden oluşturulmuş bir karışıklık matrisini (cm) ekrana yazdırmayı amaçlar. Eğer bu kodu çalıştırırsanız, karışıklık matrisinin içeriğini görebilirsiniz. İşte bu kodun açıklamaları:

cm
##       y_Pred
## y_true   0   1
##      0 784 250
##      1 175 866

Bu R dilindeki ifade, doğruluk (accuracy) ölçütünü hesaplamak için kullanılır. Doğruluk, bir sınıflandırma modelinin doğru sınıflandırılan gözlemlerin toplam sayısını, tüm gözlem sayısına bölerek elde edilir. İşte bu ifadenin açıklamaları:

(866+784)/(784+866+250+175)
## [1] 0.7951807

Bu R dilindeki kod, bir lojistik regresyon modeli oluşturmayı amaçlar. İşte bu kodun açıklamaları:

logistic_son = glm(formula = Transported ~ ., family = binomial, data = train_set )
## Warning: glm.fit: des probabilités ont été ajustées numériquement à 0 ou 1

Bu R dilindeki kod, önceden eğitilmiş bir lojistik regresyon modelini (logistic_son modeli) kullanarak bir test seti üzerinde tahminlerde bulunmayı amaçlar. İşte bu kodun açıklamaları:

prob_pred = predict(logistic_son, type = 'response' , newdata = test_set)
## Warning in predict.lm(object, newdata, se.fit, scale = 1, type = if (type == :
## prediction from rank-deficient fit; attr(*, "non-estim") has doubtful cases
y_Pred = ifelse(prob_pred > 0.5, TRUE, FALSE)

Bu R dilindeki kod, önceki adımlarda elde edilen tahmin sonuçlarını ve test setinin “PassengerId” sütununu kullanarak yeni bir veri çerçevesi oluşturmayı amaçlar. İşte bu kodun açıklamaları:

Transported <- as.character(y_Pred)
PassengerId <- test$PassengerId

Bu R dilindeki kod, “Transported” adlı vektörü karakter dizisi (character) türünden, tek boyutlu bir vektör haline getirmeyi amaçlar. İşte bu kodun açıklamaları:

Transported <- as.vector(Transported)

Bu R dilindeki kod, “Transported” adlı vektörü karakter dizisi (character) türünden, tek boyutlu bir vektör haline getirmeyi amaçlar. İşte bu kodun açıklamaları:

submission <- cbind(PassengerId, Transported)

Bu R dilindeki kod, önceki adımda oluşturulan submission nesnesini bir veri çerçevesine dönüştürmeyi amaçlar. İşte bu kodun açıklamaları:

submission <- as.data.frame(submission)

stringr R paketi, metin (string) verileri üzerinde işlem yapmak için kullanılan bir pakettir. Bu paket, metin verilerini manipüle etmek, aramak ve değiştirmek için bir dizi işlev içerir. stringr paketi, metin işleme görevlerini daha kolay ve tutarlı bir şekilde gerçekleştirmek için tasarlanmıştır.

library(stringr)

Bu R dilindeki kod, submission veri çerçevesindeki “Transported” sütunundaki metin verilerinin baş harfini büyük yapmak için stringr paketinde bulunan str_to_title fonksiyonunu kullanır. İşte bu kodun açıklamaları:

submission$Transported <- str_to_title(submission$Transported)

Bu R dilindeki kod, write.csv fonksiyonunu kullanarak bir veri çerçevesini CSV (Comma-Separated Values) formatında bir dosyaya yazmayı amaçlar. İşte bu kodun açıklamaları:

write.csv(submission, "submission_logistic.csv", row.names = FALSE, quote = FALSE)

Naive Bayes

Naive Bayes, istatistiksel bir sınıflandırma algoritmasıdır ve özellikle metin madenciliği ve spam filtreleme gibi uygulamalarda yaygın olarak kullanılır. “Naive” (saf) adını, temel varsayımlarından biri olan özellik bağımsızlığı varsayımından alır. İşte Naive Bayes algoritması hakkında genel bir değerlendirme:

Bu R dilindeki kod, e1071 paketinde bulunan naiveBayes fonksiyonunu kullanarak bir Naive Bayes modeli oluşturmayı ve bu modeli kullanarak test seti üzerinde tahminlerde bulunmayı amaçlar. İşte bu kodun açıklamaları:

library(e1071)
fit_nb <- naiveBayes(Transported ~ ., data = training_set)

preds <- predict(fit_nb, newdata = testing_set[,-11], type = "raw") %>% data.frame()

Bu R dilindeki kod, bir sınıflandırma modelinin tahmin sonuçlarını kullanarak, belirli bir eşik (threshold) değeri üzerinden ikili bir sınıflandırma yapmayı amaçlar. İşte bu kodun açıklamaları:

y_Pred = ifelse(preds$TRUE. > 0.5, 1,0)

Bu R dilindeki kod, bir karışıklık matrisi (confusion matrix) oluşturmayı amaçlar. Karışıklık matrisi, bir sınıflandırma modelinin performansını değerlendirmek için kullanılan bir araçtır. İşte bu kodun açıklamaları:

cm = table(y_true, y_Pred)
cm
##       y_Pred
## y_true    0    1
##      0  509  570
##      1   78 1016

Bu kod, R dilindeki bir karışıklık matrisini ekrana yazdırmak için kullanılır. Karışıklık matrisi, modelin sınıflandırma performansını değerlendirmek için kullanılan bir tablodur. Bu matris, gerçek sınıflar ile model tarafından yapılan tahminler arasındaki ilişkiyi gösterir.

Eğer cm adlı karışıklık matrisini ekrana yazdırırsanız, genellikle şu tür bir çıktı alırsınız:

Bu R dilindeki ifade, bir sınıflandırma modelinin doğruluk oranını (accuracy) hesaplamak için kullanılan bir formülü içerir. İşte bu ifadenin açıklamaları:

(509 +1016)/(509 + 1016+ 78 +570)
## [1] 0.7017948

Bu R dilindeki kod, e1071 paketinde bulunan naiveBayes fonksiyonunu kullanarak bir Naive Bayes modeli oluşturmayı amaçlar. İşte bu kodun açıklamaları:

nb_son = naiveBayes(Transported ~ ., data = train_set)

Bu R dilindeki kod, naiveBayes fonksiyonu ile oluşturulan Naive Bayes modelini kullanarak, yeni bir veri seti üzerinde tahminlerde bulunmayı amaçlar. İşte bu kodun açıklamaları:

preds <- predict(nb_son, newdata = test_set, type = "raw") %>% data.frame()

Bu R dilindeki kod, bir Naive Bayes modeli tarafından yapılan olasılık tahminlerini kullanarak, belirli bir eşik (threshold) değeri üzerinden ikili bir sınıflandırma yapmayı amaçlar. İşte bu kodun açıklamaları:

y_Pred = ifelse(preds$TRUE. > 0.5, TRUE, FALSE)

Bu R dilindeki kod, bir sınıflandırma modeli tarafından yapılan ikili sınıflandırma tahminlerini, daha sonra bir çıktı dosyasına yazmak üzere uygun bir formata dönüştürmeyi amaçlar. İşte bu kodun açıklamaları:

Transported <- as.character(y_Pred)
PassengerId <- test$PassengerId

Bu R dilindeki kod, “Transported” adlı değişkenin tipini vektör olarak değiştirmeyi amaçlar. İşte bu kodun açıklamaları:

Transported <- as.vector(Transported)

Bu R dilindeki kod, “submission” adlı nesnenin tipini bir veri çerçevesine dönüştürmeyi amaçlar. İşte bu kodun açıklamaları:

submission <- as.data.frame(submission)

Bu R dilindeki kod, stringr paketinde bulunan str_to_title fonksiyonunu kullanarak “submission” veri çerçevesindeki “Transported” sütunundaki metin verilerini başlık (title) formatına dönüştürmeyi amaçlar. İşte bu kodun açıklamaları:

submission$Transported <- str_to_title(submission$Transported)

Bu R dilindeki kod, “submission” veri çerçevesini bir CSV dosyasına yazmayı amaçlar. İşte bu kodun açıklamaları:

write.csv(submission, "sub_nb.csv", row.names = FALSE, quote = FALSE)

SVM

Hesaplama Maliyeti: Büyük veri setlerinde ve karmaşık modellerde hesaplama maliyeti yüksek olabilir.

Hiperparametre Ayarı: Hiperparametrelerin doğru bir şekilde ayarlanması genellikle deneyim ve hesaplama gücü gerektirir.

Çok Sınıflı Sınıflandırma: SVM, doğrudan çok sınıflı sınıflandırma problemleriyle başa çıkmak için tasarlanmamıştır. Ancak, bu sorun, birkaç ikili sınıflandırma problemiyle çözülebilir.

Bu R dilindeki kod, e1071 paketinde bulunan svm (Support Vector Machines) fonksiyonunu kullanarak bir Destek Vektör Makineleri (Support Vector Machines, SVM) sınıflandırma modeli oluşturmayı amaçlar. İşte bu kodun açıklamaları:

library(e1071)
fit_svm <- svm(Transported ~ ., data = training_set, type = 'C-classification', kernel = 'linear')

Bu R dilindeki kod, bir önceki SVM modelinin (fit_svm) test veri seti üzerindeki tahminlerini elde etmeyi amaçlar. İşte bu kodun açıklamaları:

preds <- predict(fit_svm, newdata = testing_set, type = "raw") %>%
  data.frame()

Bu R dilindeki kod, bir veri çerçevesindeki bir sütunu kontrol ederek koşula göre yeni bir sütun oluşturmayı amaçlar. İşte bu kodun açıklamaları:

y_Pred = ifelse(preds$. == TRUE, 1, 0)