ILK PROJE

R Yüklemeyi

Rmarkdown

Web sayfası

Internette

formül yazmak

\[\beta_0 = \beta_1 + \beta_2 +\beta_3\]

library(WDI)
library(ggplot2)

Kaggel

ulkeler <- c("Türkiye", "Azerbaycan")
gsyih <- c(100, 80)
veri <- data.frame(Ülke = ulkeler, GSYİH = gsyih)
library(ggplot2)
ggplot(data = veri, aes(x = Ülke, y = GSYİH, fill = Ülke)) +
  geom_bar(stat = "identity") +
  labs(x = "Ülke", y = "GSYİH (milyar $)", title = "Türkiye ve Azerbaycan GSYİH Karşılaştırması") +
  theme_minimal()

Makine öğrenmesini Açlıklayın

Makine öğrenmesi, bilgisayar sistemlerinin belirli bir görevi yerine getirmek için veri kullanarak örüntüleri tanımlama, keşfetme ve öğrenme yeteneğine sahip olduğu yapay zeka alanıdır. Bu süreçte, algoritmalar veri setlerini analiz eder, örüntüleri belirler ve bu örüntüleri kullanarak gelecekteki verileri tahmin etmeyi veya belirli bir görevi yerine getirmeyi öğrenirler. Makine öğrenimi, sınıflandırma, regresyon, kümeleme, desen tanıma gibi çeşitli problemleri çözmek için kullanılır ve geniş bir uygulama alanına sahiptir, örneğin sağlık, finans, otomotiv, perakende ve daha fazlasında kullanılır. Bu süreç, veriye dayalı karar alma süreçlerini otomatikleştirmek ve geliştirmek için kullanılır, böylece sistemler daha doğru ve verimli hale gelir.

spacehip titanic(kaggle tanımı)

“2912 yılına hoş geldiniz, burada veri bilimi becerilerinizin bir kozmik gizemi çözmek için gerektiği bir zamandayız. Dört ışık yılı uzaklıktan bir ileti aldık ve durum iyi görünmüyor.

Uzay Gemisi Titanic, bir ay önce fırlatılan bir yıldızlararası yolcu gemisiydi. Yaklaşık 13.000 yolcuyla yola çıkan gemi, Güneş sistemimizden üç yeni yaşanabilir yıldız etrafında dönen gezegenlere göçmenleri taşıyarak ilk seferine başladı.

İlk varış noktası olan 55 Cancri E’ye, Alfa Centauri’yi dolaşırken, dikkatsiz Uzay Gemisi Titanic, bir toz bulutunun içinde gizlenmiş bir uzay-zaman anormalliğiyle çarpıştı. Ne yazık ki, adını taşıdığı gemiye bin yıl önceki kaderle benzer bir kaderi paylaştı. Gemi bütünlüğünü korudu, ancak neredeyse yolcuların yarısı alternatif bir boyuta taşındı!

Kurtarma ekiplerine yardım etmek ve kayıp yolcuları kurtarmak için, uzay gemisinin hasar görmüş bilgisayar sisteminden kurtarılan kayıtları kullanarak hangi yolcuların anormallik tarafından taşındığını tahmin etmeniz isteniyor. Onları kurtarmaya yardım edin ve tarihi değiştirin!”

Ortalama nedir?

Ortalama, istatistik bilim dalında ve veri analizinde kullanılan bir veri dizisinin orta konumunu, tek bir sayı ile ifade eden betimsel istatistik ölçüsüdür. Günlük hayatta ortalama dendiğinde genellikle kast edilen aritmetik ortalama olmakla beraber, bu ölçünün çok belirli bazı dezavantajları söz konusudur. İşte farklı ortalama türlerine bir göz atalım.

##Ortalama formulu \[ x=\frac{1}N\sum_{i=1}x_if_i \] ## ÖRNEK 1*:X= (1,2,2,2,3,4,4,5,5,5,6,6) ; 𝑁 = 12 gözlem sonuçları verilmiştir. Bu verilerin aritmetik ortalamasını bulunuz.

\[ x=\frac{1}N\sum_{i=1}x_if_i=\frac{1}{12}(1*1+2*3+3*1+4*2+5*3+6*2)=3,75 \] ## Standart sapama nedir? Standart sapma istatistiksel bir terimdir ve veri setinin dağılımını ölçen bir ölçüdür. Standart sapma, bir veri setindeki değerlerin ne kadar yayıldığını veya dağıldığını gösteren bir ölçüdür. Standart sapma ne kadar yüksekse, veri noktaları o kadar yayılmış demektir; standart sapma ne kadar düşükse, veri noktaları o kadar yakındır veya sıkıdır demektir.

Bir veri setindeki her bir değerin ortalamadan ne kadar uzak olduğunu ölçmek için standart sapma kullanılır. Standart sapmanın formülü, her bir değerin ortalamadan farkının karesini alarak bunların toplamını hesaplamak, bu toplamı veri setinin eleman sayısına bölerek bunun karekökünü almaktır.

##Standart sapma formulu \[ \sigma = \sqrt{\frac{1}{n} \sum_{i=1}^{n} (x_i - \bar{x})^2} \]

Standart sapma ornek

# Örnek veri seti oluşturalım
veri <- c(10, 20, 15, 25, 30, 18, 22, 17, 24, 19)

# Standart sapmayı hesaplayalım
standart_sapma <- sd(veri)

# Hesaplanan standart sapmayı ekrana yazdıralım
print(standart_sapma)
## [1] 5.617433

Kovaryans nedir?

Kovaryans, istatistikte iki değişken arasındaki ilişkinin ölçüsüdür. Kovaryans, bu değişkenlerin aynı anda nasıl değiştiğini ölçer. Eğer bir değişken diğer değişkenle aynı yönde değişiyorsa (birinci değişken artarken ikinci değişken de artıyorsa), kovaryans pozitif olur. Eğer bir değişken diğer değişkenle ters yönde değişiyorsa (birinci değişken artarken ikinci değişken azalıyorsa), kovaryans negatif olur. Kovaryans sıfıra yakınsa, değişkenler arasında belirgin bir ilişki yok demektir.

Kovaryans formulu

\[ \text{Cov}(X,Y) = \frac{1}{n} \sum_{i=1}^{n} (X_i - \bar{X})(Y_i - \bar{Y}) \]

# Örnek veri setleri
X <- c(10, 20, 15, 25, 30)  # X değişkeninin değerleri
Y <- c(5, 8, 12, 15, 20)     # Y değişkeninin değerleri

# X ve Y değişkenlerinin ortalamalarını hesaplayalım
mean_X <- mean(X)
mean_Y <- mean(Y)

# Kovaryansı hesaplayalım
n <- length(X)  # veya length(Y) (her ikisi de aynı uzunlukta olduğu varsayılırsa)
covariance <- sum((X - mean_X) * (Y - mean_Y)) / n

# Hesaplanan kovaryansı ekrana yazdıralım
print(covariance)
## [1] 33

Korelasyon nedir?

Korelasyon, istatistikte iki değişken arasındaki ilişkinin gücünü ve yönünü ölçen bir terimdir. İki değişken arasındaki ilişki, bu değişkenlerin birlikte nasıl değiştiğini ifade eder. Korelasyon katsayısı, bu ilişkiyi sayısal olarak ifade eden bir ölçüdür ve genellikle -1 ile +1 arasında değer alır.

korelasyon Formulu

\[ \text{Corr}(X,Y) = \frac{\text{Cov}(X,Y)}{\sigma_X \times \sigma_Y} \]

# İki örnek veri seti oluşturalım
X <- c(10, 20, 15, 25, 30)  # İlk değişkenin değerleri
Y <- c(5, 8, 12, 15, 20)     # İkinci değişkenin değerleri

# Korelasyon katsayısını hesapla
correlation_coefficient <- cor(X, Y)

# Hesaplanan korelasyon katsayısını ekrana yazdır
print(correlation_coefficient)
## [1] 0.8883301

Train ve test set

Veri seti açıklaması Bu yarışmada, Uzay Gemisi Titanic’in uzayzaman anormalliği ile çarpışması sırasında bir yolcunun alternatif bir boyuta taşınıp taşınmadığını tahmin etmeniz gerekmektedir. Bu tahminleri yapmanıza yardımcı olmak için, geminin hasar görmüş bilgisayar sisteminden kurtarılan bir dizi kişisel kayıt verilmiştir.

Dosya ve Veri Alanı Açıklamaları train.csv - Yaklaşık olarak yolcuların üçte ikisi (~8700) için kişisel kayıtlar, eğitim verisi olarak kullanılacaktır. PassengerId - Her bir yolcu için benzersiz bir kimlik. Her kimlik, gggg_pp şeklinde olup, gggg yolcuyla seyahat eden grubu gösterir ve pp ise gruptaki numarasını belirtir. Bir gruptaki insanlar genellikle aile üyeleridir, ancak her zaman değil. HomePlanet - Yolcunun ayrıldığı gezegen, genellikle kalıcı ikamet gezegenleri. CryoSleep - Yolcunun yolculuk süresince askıya alınmış animasyona girmeyi seçip seçmediğini gösterir. Cryosleep’teki yolcular kabinlerine kapatılır. Cabin - Yolcunun kaldığı kabin numarası. Side, P için Port veya S için Starboard olabilen deck/num/side şeklinde alınır. Destination - Yolcunun iniş yapacağı gezegen. Age - Yolcunun yaşı. VIP - Yolcunun yolculuk sırasında özel VIP hizmeti için ödeme yapmış olup olmadığı. RoomService, FoodCourt, ShoppingMall, Spa, VRDeck - Yolcunun Uzay Gemisi Titanic’in birçok lüks olanaklarında ne kadar fatura ödediği. Name - Yolcunun adı ve soyadı. Transported - Yolcunun başka bir boyuta taşınıp taşınmadığı. Bu, tahmin etmeye çalıştığınız sütun olan hedeftir. test.csv - Geriye kalan yolcuların üçte biri (~4300) için kişisel kayıtlar, test verisi olarak kullanılacaktır. Göreviniz, bu setteki yolcular için Transported değerini tahmin etmektir. sample_submission.csv - Doğru formatta bir gönderim dosyası. PassengerId - Test setindeki her bir yolcu için kimlik. Transported - Hedef. Her yolcu için, ya True ya da False tahmini yapın.

library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.5
## ✔ forcats   1.0.0     ✔ stringr   1.5.1
## ✔ lubridate 1.9.3     ✔ tibble    3.2.1
## ✔ purrr     1.0.2     ✔ tidyr     1.3.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(readr)
train <- read_csv("train.csv")
test <- read_csv("test.csv")
train <- separate(train, PassengerId, into = c("group_id", "sequence_number"), sep = "_", remove = FALSE)
tekrarlanan_gruplar <- train %>%
  group_by(group_id) %>%
  filter(n() > 1) %>%
  pull(group_id)
train <- train %>%
  mutate(beraber_yolculuk_yapanlar = ifelse(group_id %in% tekrarlanan_gruplar, TRUE, FALSE))
train <- separate(train, Cabin, into = c("sutun1", "sutun2", "sutun3"), sep = "/", remove = FALSE)
train$HomePlanet <- as.factor(train$HomePlanet)
summary(train)
##  PassengerId          group_id         sequence_number     HomePlanet  
##  Length:8693        Length:8693        Length:8693        Earth :4602  
##  Class :character   Class :character   Class :character   Europa:2131  
##  Mode  :character   Mode  :character   Mode  :character   Mars  :1759  
##                                                           NA's  : 201  
##                                                                        
##                                                                        
##                                                                        
##  CryoSleep          Cabin              sutun1             sutun2         
##  Mode :logical   Length:8693        Length:8693        Length:8693       
##  FALSE:5439      Class :character   Class :character   Class :character  
##  TRUE :3037      Mode  :character   Mode  :character   Mode  :character  
##  NA's :217                                                               
##                                                                          
##                                                                          
##                                                                          
##     sutun3          Destination             Age           VIP         
##  Length:8693        Length:8693        Min.   : 0.00   Mode :logical  
##  Class :character   Class :character   1st Qu.:19.00   FALSE:8291     
##  Mode  :character   Mode  :character   Median :27.00   TRUE :199      
##                                        Mean   :28.83   NA's :203      
##                                        3rd Qu.:38.00                  
##                                        Max.   :79.00                  
##                                        NA's   :179                    
##   RoomService        FoodCourt        ShoppingMall          Spa         
##  Min.   :    0.0   Min.   :    0.0   Min.   :    0.0   Min.   :    0.0  
##  1st Qu.:    0.0   1st Qu.:    0.0   1st Qu.:    0.0   1st Qu.:    0.0  
##  Median :    0.0   Median :    0.0   Median :    0.0   Median :    0.0  
##  Mean   :  224.7   Mean   :  458.1   Mean   :  173.7   Mean   :  311.1  
##  3rd Qu.:   47.0   3rd Qu.:   76.0   3rd Qu.:   27.0   3rd Qu.:   59.0  
##  Max.   :14327.0   Max.   :29813.0   Max.   :23492.0   Max.   :22408.0  
##  NA's   :181       NA's   :183       NA's   :208       NA's   :183      
##      VRDeck            Name           Transported     beraber_yolculuk_yapanlar
##  Min.   :    0.0   Length:8693        Mode :logical   Mode :logical            
##  1st Qu.:    0.0   Class :character   FALSE:4315      FALSE:4805               
##  Median :    0.0   Mode  :character   TRUE :4378      TRUE :3888               
##  Mean   :  304.9                                                               
##  3rd Qu.:   46.0                                                               
##  Max.   :24133.0                                                               
##  NA's   :188
# Örnek veri çerçevesi oluşturma
df <- data.frame(
  group_id = c(1, 1, 2, 3, 4),
  homeplanet = c("A", NA, "B", "C", "A")
)

# NA değerlerini "Dünya" olarak doldurma
df$homeplanet[is.na(df$homeplanet)] <- "Dünya"

# Eğitim seti oluşturma
training_set <- df

# Hedef değişkeni ayırma
labels <- training_set$homeplanet
training_set$homeplanet <- NULL

# Eğitim setini kontrol etme
print(training_set)
##   group_id
## 1        1
## 2        1
## 3        2
## 4        3
## 5        4
print(labels)
## [1] "A"     "Dünya" "B"     "C"     "A"
# Rastgele veri seti oluşturma
set.seed(123) # Çalışmanın tekrarlanabilirliği için seed ayarlayalım

num_samples <- 1000  # Örneklem sayısı

# Rastgele group_id ve homeplanet sütunlarını oluşturma
group_id <- sample(1:5, num_samples, replace = TRUE)
homeplanet <- sample(c("A", "NA", "B", "C"), num_samples, replace = TRUE)

# Veri çerçevesi oluşturma
df <- data.frame(
  group_id = group_id,
  homeplanet = homeplanet
)

# NA değerlerini "Dünya" olarak değiştirme
df$homeplanet[is.na(df$homeplanet)] <- "Dünya"

# Sonuçları kontrol etme
head(df)
##   group_id homeplanet
## 1        3          B
## 2        3          C
## 3        2         NA
## 4        2          B
## 5        3          C
## 6        5          B
library(dplyr)
hist(train$FoodCourt)

hist(train$RoomService)

hist(train$Age)

hist(train$Spa)

test <- transform(test,
                   groupId = substr(PassengerId, 1, 4),
                   PassengerNumber = substr(PassengerId, 6, nchar(PassengerId)))
test$GroupId <- duplicated(test$groupId) | duplicated(test$groupId, fromLast = TRUE)
test$deck <- substr(test$Cabin, 1, 1)
test$num <- substring(test$Cabin, 2, nchar(test$Cabin) - 2)
test$side <- substr(test$Cabin, nchar(test$Cabin), nchar(test$Cabin))
summary(test)
##  PassengerId         HomePlanet        CryoSleep          Cabin          
##  Length:4277        Length:4277        Mode :logical   Length:4277       
##  Class :character   Class :character   FALSE:2640      Class :character  
##  Mode  :character   Mode  :character   TRUE :1544      Mode  :character  
##                                        NA's :93                          
##                                                                          
##                                                                          
##                                                                          
##  Destination             Age           VIP           RoomService     
##  Length:4277        Min.   : 0.00   Mode :logical   Min.   :    0.0  
##  Class :character   1st Qu.:19.00   FALSE:4110      1st Qu.:    0.0  
##  Mode  :character   Median :26.00   TRUE :74        Median :    0.0  
##                     Mean   :28.66   NA's :93        Mean   :  219.3  
##                     3rd Qu.:37.00                   3rd Qu.:   53.0  
##                     Max.   :79.00                   Max.   :11567.0  
##                     NA's   :91                      NA's   :82       
##    FoodCourt        ShoppingMall         Spa              VRDeck       
##  Min.   :    0.0   Min.   :   0.0   Min.   :    0.0   Min.   :    0.0  
##  1st Qu.:    0.0   1st Qu.:   0.0   1st Qu.:    0.0   1st Qu.:    0.0  
##  Median :    0.0   Median :   0.0   Median :    0.0   Median :    0.0  
##  Mean   :  439.5   Mean   : 177.3   Mean   :  303.1   Mean   :  310.7  
##  3rd Qu.:   78.0   3rd Qu.:  33.0   3rd Qu.:   50.0   3rd Qu.:   36.0  
##  Max.   :25273.0   Max.   :8292.0   Max.   :19844.0   Max.   :22272.0  
##  NA's   :106       NA's   :98       NA's   :101       NA's   :80       
##      Name             groupId          PassengerNumber     GroupId       
##  Length:4277        Length:4277        Length:4277        Mode :logical  
##  Class :character   Class :character   Class :character   FALSE:2340     
##  Mode  :character   Mode  :character   Mode  :character   TRUE :1937     
##                                                                          
##                                                                          
##                                                                          
##                                                                          
##      deck               num                side          
##  Length:4277        Length:4277        Length:4277       
##  Class :character   Class :character   Class :character  
##  Mode  :character   Mode  :character   Mode  :character  
##                                                          
##                                                          
##                                                          
## 
test$HomePlanet <- as.factor(test$HomePlanet)
test <- test %>%
  group_by(PassengerNumber) %>%
  mutate(homeplanet = ifelse(is.na(HomePlanet), unique(HomePlanet[!is.na(HomePlanet)]),HomePlanet))
summary(test)
##  PassengerId         HomePlanet   CryoSleep          Cabin          
##  Length:4277        Earth :2263   Mode :logical   Length:4277       
##  Class :character   Europa:1002   FALSE:2640      Class :character  
##  Mode  :character   Mars  : 925   TRUE :1544      Mode  :character  
##                     NA's  :  87   NA's :93                          
##                                                                     
##                                                                     
##                                                                     
##  Destination             Age           VIP           RoomService     
##  Length:4277        Min.   : 0.00   Mode :logical   Min.   :    0.0  
##  Class :character   1st Qu.:19.00   FALSE:4110      1st Qu.:    0.0  
##  Mode  :character   Median :26.00   TRUE :74        Median :    0.0  
##                     Mean   :28.66   NA's :93        Mean   :  219.3  
##                     3rd Qu.:37.00                   3rd Qu.:   53.0  
##                     Max.   :79.00                   Max.   :11567.0  
##                     NA's   :91                      NA's   :82       
##    FoodCourt        ShoppingMall         Spa              VRDeck       
##  Min.   :    0.0   Min.   :   0.0   Min.   :    0.0   Min.   :    0.0  
##  1st Qu.:    0.0   1st Qu.:   0.0   1st Qu.:    0.0   1st Qu.:    0.0  
##  Median :    0.0   Median :   0.0   Median :    0.0   Median :    0.0  
##  Mean   :  439.5   Mean   : 177.3   Mean   :  303.1   Mean   :  310.7  
##  3rd Qu.:   78.0   3rd Qu.:  33.0   3rd Qu.:   50.0   3rd Qu.:   36.0  
##  Max.   :25273.0   Max.   :8292.0   Max.   :19844.0   Max.   :22272.0  
##  NA's   :106       NA's   :98       NA's   :101       NA's   :80       
##      Name             groupId          PassengerNumber     GroupId       
##  Length:4277        Length:4277        Length:4277        Mode :logical  
##  Class :character   Class :character   Class :character   FALSE:2340     
##  Mode  :character   Mode  :character   Mode  :character   TRUE :1937     
##                                                                          
##                                                                          
##                                                                          
##                                                                          
##      deck               num                side             homeplanet   
##  Length:4277        Length:4277        Length:4277        Min.   :1.000  
##  Class :character   Class :character   Class :character   1st Qu.:1.000  
##  Mode  :character   Mode  :character   Mode  :character   Median :1.000  
##                                                           Mean   :1.687  
##                                                           3rd Qu.:2.000  
##                                                           Max.   :3.000  
## 
hist(test$FoodCourt)

hist(test$RoomService)

hist(test$Age)

hist(test$Spa)