VİZE PROJESİ
1910701526
SPACESHİP TITANİC KAGGLE COMPETTION
Kaggle, ünlü Titanic
yarışmasına benzer şekilde Spaceship Titanic adında eğlenceli bir
yarışma başlattı. Bu yarışma, veri bilimine yeni başlayanlar için makine
öğrenimi hakkında bilgi edinmenin, Kaggle’ı keşfetmenin ve topluluğun
diğer üyeleriyle tanışmanın bir yoludur. Bu makale Spaceship Titanic
yarışmasını analiz etmekte ve RandomForestClassifier kullanarak test
seti için anlamlı içgörülerin nasıl elde edileceğini ve “temel gerçeğin”
yaklaşık %80 doğrulukla nasıl tahmin edileceğini açıklamaktadır.
PROBLEME TANIMI
Uzay gemisi Titanik, bir uzay-zaman anomalisiyle çarpıştı ve yolcuların yarısı farklı bir boyuta taşındı. Kayıp yolcuları bulmak için hasarlı bilgisayar sisteminden kayıtları geri yüklememiz gerekiyor.
VERİLER HAKKINDA
*Train dosyası (spaceship_titanic_train.csv) — Kişisel kayıtlar,makine öğrenimi modeli oluşturmak için kullanılacak yolcuların bilgilerini içerir.
*Test dosyası (spaceship_titanic_test.csv) — Metin, yolcuların üçtebirinin kişisel kayıtlarını içerdiğini, ancak taşınabilir değeri içermediğini belirtmektedir.
Bu verilerin, modelin görünmeyen veriler üzerinde ne kadar iyi performans gösterdiğini ölçmek için kullanılacağı söylenmektedir.
Bu problem çözmek için Rstudio ve RMarkdown kullanacağız.
VERİ OKUMA
Veri setinin yapısını kontrol edeceğiz.Önce özelliklere bakacağız, sonra türleri kontrol edeceğiz.
Train veri setinde 13 bağımsız değişken ve 1 hedef değişken bulunuyor(Transported). Aynı şekilde test veri setinde de sütunlar mevcut. Test veri kümesinde, train veri kümesiyle benzer özelliklere sahip olduğumuz için tahminlerimizi train verileriyle oluşturulan modele dayanarak yapacağız.
## spc_tbl_ [8,693 × 14] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
## $ PassengerId : chr [1:8693] "0001_01" "0002_01" "0003_01" "0003_02" ...
## $ HomePlanet : chr [1:8693] "Europa" "Earth" "Europa" "Europa" ...
## $ CryoSleep : logi [1:8693] FALSE FALSE FALSE FALSE FALSE FALSE ...
## $ Cabin : chr [1:8693] "B/0/P" "F/0/S" "A/0/S" "A/0/S" ...
## $ Destination : chr [1:8693] "TRAPPIST-1e" "TRAPPIST-1e" "TRAPPIST-1e" "TRAPPIST-1e" ...
## $ Age : num [1:8693] 39 24 58 33 16 44 26 28 35 14 ...
## $ VIP : logi [1:8693] FALSE FALSE TRUE FALSE FALSE FALSE ...
## $ RoomService : num [1:8693] 0 109 43 0 303 0 42 0 0 0 ...
## $ FoodCourt : num [1:8693] 0 9 3576 1283 70 ...
## $ ShoppingMall: num [1:8693] 0 25 0 371 151 0 3 0 17 0 ...
## $ Spa : num [1:8693] 0 549 6715 3329 565 ...
## $ VRDeck : num [1:8693] 0 44 49 193 2 0 0 NA 0 0 ...
## $ Name : chr [1:8693] "Maham Ofracculy" "Juanna Vines" "Altark Susent" "Solam Susent" ...
## $ Transported : logi [1:8693] FALSE TRUE FALSE FALSE TRUE TRUE ...
## - attr(*, "spec")=
## .. cols(
## .. PassengerId = col_character(),
## .. HomePlanet = col_character(),
## .. CryoSleep = col_logical(),
## .. Cabin = col_character(),
## .. Destination = col_character(),
## .. Age = col_double(),
## .. VIP = col_logical(),
## .. RoomService = col_double(),
## .. FoodCourt = col_double(),
## .. ShoppingMall = col_double(),
## .. Spa = col_double(),
## .. VRDeck = col_double(),
## .. Name = col_character(),
## .. Transported = col_logical()
## .. )
## - attr(*, "problems")=<externalptr>
## spc_tbl_ [4,277 × 13] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
## $ PassengerId : chr [1:4277] "0013_01" "0018_01" "0019_01" "0021_01" ...
## $ HomePlanet : chr [1:4277] "Earth" "Earth" "Europa" "Europa" ...
## $ CryoSleep : logi [1:4277] TRUE FALSE TRUE FALSE FALSE FALSE ...
## $ Cabin : chr [1:4277] "G/3/S" "F/4/S" "C/0/S" "C/1/S" ...
## $ Destination : chr [1:4277] "TRAPPIST-1e" "TRAPPIST-1e" "55 Cancri e" "TRAPPIST-1e" ...
## $ Age : num [1:4277] 27 19 31 38 20 31 21 20 23 24 ...
## $ VIP : logi [1:4277] FALSE FALSE FALSE FALSE FALSE FALSE ...
## $ RoomService : num [1:4277] 0 0 0 0 10 0 0 0 0 0 ...
## $ FoodCourt : num [1:4277] 0 9 0 6652 0 ...
## $ ShoppingMall: num [1:4277] 0 0 0 0 635 263 0 0 0 0 ...
## $ Spa : num [1:4277] 0 2823 0 181 0 ...
## $ VRDeck : num [1:4277] 0 0 0 585 0 60 0 0 0 0 ...
## $ Name : chr [1:4277] "Nelly Carsoning" "Lerome Peckers" "Sabih Unhearfus" "Meratz Caltilter" ...
## - attr(*, "spec")=
## .. cols(
## .. PassengerId = col_character(),
## .. HomePlanet = col_character(),
## .. CryoSleep = col_logical(),
## .. Cabin = col_character(),
## .. Destination = col_character(),
## .. Age = col_double(),
## .. VIP = col_logical(),
## .. RoomService = col_double(),
## .. FoodCourt = col_double(),
## .. ShoppingMall = col_double(),
## .. Spa = col_double(),
## .. VRDeck = col_double(),
## .. Name = col_character()
## .. )
## - attr(*, "problems")=<externalptr>
Yukarıdaki değişkenleri açıklamasına vereceğiz.
*PassengerId:Her yolcu için benzersiz bir kimlik olan gggg_pp formatındaki kimlikler,gggg’nin yolcunun seyahat ettiği grubu ve pp’nin grup içindeki numarasını gösterir. Bu grup genellikle aile üyelerinden oluşur, fakat her zaman olmayabilir.
*HomePlanet:Yolcunun ayrıldığı gezegen daimi ikamet gezegeni olarak bilinir.
*CryoSleep:Yolcunun yolculuk süresinde dondurucu uykuya alınıp alınmayacağını gösterir. Yolcular cabinlere kapatılır.
*Cabin :Yolcunun kaldığı cabin numarası.deck/num/side biçimini alır, burada yan İskele için P veya Sancak için S olabilir.
*Destination:Yolcunun ineceği gezegen.
*Age:Yolcunun yaşı.
*VIP:Yolcunun yolculuk sırasında özel VIP hizmeti için ödeme yapıp yapmadığı.
*Roomservice,Foodcourt,ShoppingMall,Spa,VRDeck:Yolcunun Uzay Gemisi Titanic’in faturalandırılan her bir lüks özelliği için tutar ödediği belirtiliyor.
*Name:Yolcunun adı ve soyadı.
*Transported:Gözlemlediğimiz şey, yolcunun başka bir boyuta geçip geçmediğini belirlemeye çalışmak. Bunun hedefi sütundur.
## [1] "Europa" "Earth" "Mars" NA
## [1] "Earth" "Europa" "Mars" NA
## [1] "TRAPPIST-1e" "PSO J318.5-22" "55 Cancri e" NA
## [1] "TRAPPIST-1e" "55 Cancri e" "PSO J318.5-22" NA
TİDYVERSE
Tidyverse, veri analizi ve görselleştirme için kullanılan bir paket serisidir. Temiz, düzenli ve etkili bir veri analizi süreci sağlar.
Train ve test veri çerçevesinde boş değerleri kontrol eder ve boş olan hücrelere NA değeri atanır.
## # 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
## # A tibble: 13 × 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 chr 87 2 4 NA NA NA
## 3 CryoSleep lgl 93 2.2 3 0 0.37 1
## 4 Cabin chr 100 2.3 3266 NA NA NA
## 5 Destination chr 92 2.2 4 NA NA NA
## 6 Age dbl 91 2.1 80 0 28.7 79
## 7 VIP lgl 93 2.2 3 0 0.02 1
## 8 RoomService dbl 82 1.9 843 0 219. 11567
## 9 FoodCourt dbl 106 2.5 903 0 439. 25273
## 10 ShoppingMall dbl 98 2.3 716 0 177. 8292
## 11 Spa dbl 101 2.4 834 0 303. 19844
## 12 VRDeck dbl 80 1.9 797 0 311. 22272
## 13 Name chr 94 2.2 4177 NA NA NA
“Train ve test” veri çerçevesindeki “Cabin” sütununu karakterine göre bölerek, “sütun1”, “sütun2” ve “sütun3” adlı yeni sütunları oluşturur. Sonra İskele için P veya Sancak için S kolayca göstereceğiz.
train[c('sütun1', 'sütun2', 'sütun3')] <-str_split_fixed(train$Cabin,'/', 3)
test[c('sütun1', 'sütun2', 'sütun3')] <-str_split_fixed(test$Cabin,'/', 3)Train ve test bulunan PassengerId sütununu içinde iki tane bilgi (gggg_pp) vardı ve bu iki bilgi çıkartacağız,(gggg)ailenum ve (pp)ailesıra.
train[c('ailenum','ailesıra')] <- str_split_fixed(train$PassengerId,"_",2)
test[c('ailenum','ailesıra')] <- str_split_fixed(test$PassengerId,"_",2)Train ve test, PassengerId sütunundaki ayırılan hücreyi başıya alalım.
Şimdi train ve test, Cabinden üç parçaya ayırılan hücreyi (‘sütun1’, ‘sütun2’, ‘sütun3’) Cabinin yanına alalım.
Train ve test veri kümesinin Cabinin bilgisine aldık,artık ihtiyacımız kadığı için temizliğeceğiz.
AddNA() fonksiyonu, belirtilen vektöre veya faktöre NA değerini eklemek için kullanılır.Örneğin, eğer “train ve test” veri sütunun başlangıçta NA değerleri içermiyorsa, bu kod parçası her hücreye bir NA değeri ekleyecektir. Eğer “train ve test” veri sütunun zaten NA değerleri içeriyorsa, bu kod değişikliğe neden olmayacaktır.
Şimdi “train” ve “test” veri çerçevelerinin “HomePlanet” ve “Destination” sütunlarına göre gruplanmasını sağlar. Daha sonra, eksik değerleri (NA) “Age” sütununda ortalama değerlerle değiştiririz.
library(dplyr)
library(tidyr)
train <- train %>% group_by(HomePlanet,Destination) %>%
mutate(Age = replace_na(Age,mean(Age, na.rm = TRUE)))
test <- test %>% group_by(HomePlanet,Destination) %>%
mutate(Age = replace_na(Age,mean(Age, na.rm = TRUE)))Train ve test, isim(Name) sütunun ihtiyacımız yok o yüzden sileceğiz.
Şimdi Bu dönüşüm işlemi, sütunlardaki eksik veya boş değerleri belirli bir değerle (burada 0 ile) doldurmayı amaçlacımızdır. Bu, veri analizi veya modelleme sürecinde eksik değerlerin doğru şekilde ele alınması ve sorun yaşanmaması için önemlidir.
train <- train %>%
mutate(RoomService=coalesce(RoomService, 0),
FoodCourt=coalesce(FoodCourt, 0),
ShoppingMall=coalesce(ShoppingMall, 0),
Spa=coalesce(Spa,0),
VRDeck=coalesce(VRDeck,0))
test <- test %>%
mutate(RoomService=coalesce(RoomService, 0),
FoodCourt=coalesce(FoodCourt, 0),
ShoppingMall=coalesce(ShoppingMall, 0),
Spa=coalesce(Spa,0),
VRDeck=coalesce(VRDeck,0))## # A tibble: 17 × 8
## variable type na na_pct unique min mean max
## <chr> <chr> <int> <dbl> <int> <dbl> <dbl> <dbl>
## 1 ailenum chr 0 0 6217 NA NA NA
## 2 ailesıra chr 0 0 8 NA NA NA
## 3 PassengerId chr 0 0 8693 NA NA NA
## 4 HomePlanet fct 0 0 4 NA NA NA
## 5 CryoSleep fct 0 0 3 NA NA NA
## 6 sütun1 fct 0 0 9 NA NA NA
## 7 sütun2 chr 0 0 1818 NA NA NA
## 8 sütun3 chr 0 0 3 NA NA NA
## 9 Destination fct 0 0 4 NA NA NA
## 10 Age dbl 0 0 91 0 28.8 79
## 11 VIP fct 0 0 3 NA NA NA
## 12 RoomService dbl 0 0 1273 0 220. 14327
## 13 FoodCourt dbl 0 0 1507 0 448. 29813
## 14 ShoppingMall dbl 0 0 1115 0 170. 23492
## 15 Spa dbl 0 0 1327 0 305. 22408
## 16 VRDeck dbl 0 0 1306 0 298. 24133
## 17 Transported lgl 0 0 2 0 0.5 1
## # A tibble: 16 × 8
## variable type na na_pct unique min mean max
## <chr> <chr> <int> <dbl> <int> <dbl> <dbl> <dbl>
## 1 ailenum chr 0 0 3063 NA NA NA
## 2 ailesıra chr 0 0 8 NA NA NA
## 3 PassengerId chr 0 0 4277 NA NA NA
## 4 HomePlanet fct 0 0 4 NA NA NA
## 5 CryoSleep fct 0 0 3 NA NA NA
## 6 sütun1 fct 0 0 9 NA NA NA
## 7 sütun2 chr 0 0 1506 NA NA NA
## 8 sütun3 chr 0 0 3 NA NA NA
## 9 Destination fct 0 0 4 NA NA NA
## 10 Age dbl 0 0 91 0 28.7 79
## 11 VIP fct 0 0 3 NA NA NA
## 12 RoomService dbl 0 0 842 0 215. 11567
## 13 FoodCourt dbl 0 0 902 0 429. 25273
## 14 ShoppingMall dbl 0 0 715 0 173. 8292
## 15 Spa dbl 0 0 833 0 296. 19844
## 16 VRDeck dbl 0 0 796 0 305. 22272
Artık train ve test setinin describe_all içinde na kısmın değişkenler sıfırdır.
“Train ve test” veri çerçevesine “aile” adlı bir sütun eklenir. Bu sütun, “ailenum” sütunundaki yinelenen değerlerin varlığını gösteren bir etiket alır, 1 yinelenen değerler için ve 0 yinelenmeyen değerler için işaretlenir.
train$aile <- ifelse(duplicated(train$ailenum) | duplicated(train$ailenum, fromLast = TRUE),1,0 )
test$aile <- ifelse(duplicated(test$ailenum) | duplicated(test$ailenum, fromLast = TRUE),1,0 )## # A tibble: 20 × 3
## PassengerId ailenum aile
## <chr> <chr> <dbl>
## 1 0001_01 0001 0
## 2 0002_01 0002 0
## 3 0003_01 0003 1
## 4 0003_02 0003 1
## 5 0004_01 0004 0
## 6 0005_01 0005 0
## 7 0006_01 0006 1
## 8 0006_02 0006 1
## 9 0007_01 0007 0
## 10 0008_01 0008 1
## 11 0008_02 0008 1
## 12 0008_03 0008 1
## 13 0009_01 0009 0
## 14 0010_01 0010 0
## 15 0011_01 0011 0
## 16 0012_01 0012 0
## 17 0014_01 0014 0
## 18 0015_01 0015 0
## 19 0016_01 0016 0
## 20 0017_01 0017 1
## # A tibble: 20 × 3
## PassengerId ailenum aile
## <chr> <chr> <dbl>
## 1 0013_01 0013 0
## 2 0018_01 0018 0
## 3 0019_01 0019 0
## 4 0021_01 0021 0
## 5 0023_01 0023 0
## 6 0027_01 0027 0
## 7 0029_01 0029 0
## 8 0032_01 0032 1
## 9 0032_02 0032 1
## 10 0033_01 0033 0
## 11 0037_01 0037 0
## 12 0040_01 0040 1
## 13 0040_02 0040 1
## 14 0042_01 0042 0
## 15 0046_01 0046 1
## 16 0046_02 0046 1
## 17 0046_03 0046 1
## 18 0047_01 0047 1
## 19 0047_02 0047 1
## 20 0047_03 0047 1
Artık bunlar (ailenum,ailesıra ve sütun2 ) ihtiyacımız yok onlara sileceğiz.
train <- train %>% select(- c(ailenum,ailesıra ,sütun2 ))
test <- test %>% select(- c(ailenum,ailesıra ,sütun2 ))Train ve test veri setimizin yapısına bakalım.
cat("Eğitilmiş veri kümesinin şekli şöyledir: ", nrow(train), " satırlar ve ", ncol(train), " columns\n")## Eğitilmiş veri kümesinin şekli şöyledir: 8693 satırlar ve 15 columns
cat("Eğitilmiş veri kümesinin şekli şöyledir: ", nrow(test), " satırlar ve ", ncol(test), " columns\n")## Eğitilmiş veri kümesinin şekli şöyledir: 4277 satırlar ve 14 columns
Train veri kümesinde 8693 satır ve 15 sütun ve test veri kümesinde 4277 satır ve 14 sütun var.
Keşifsel Veri Analizi
Tek Değişkenli Analiz
Tek değişkenli analiz, verileri ayrı ayrı inceleyerek değerlerinin dağılımını anlamak için kullanılan en basit veri analiz yöntemidir.
Hedef Değişken
Öncelikle Transported adlı hedef değişkene odaklanacağız. Bu bir kategorik değişkendir, bu yüzden yüzde dağılımına ve çubuk grafiğine bakacağız.
##
## FALSE TRUE
## 0.4963764 0.5036236
library(ggplot2)
ggplot(train, aes(x = Transported, fill = factor(Transported))) +
geom_bar() +
labs(x = "Transported", y = "Transported Count") +
scale_fill_manual(values = c("0" = "white", "1" = "blue"))Train veri setindeki 8693 yolcudan 4378’i (yaklaşık% 50) başka bir boyuta taşındı.
Şimdi Bağımsız kategorik özelliklerini görselleştirelim.
Bağımsız Değişken train için (Kategorik)
ggplot(train, aes(x = HomePlanet, fill = factor(HomePlanet))) +
geom_bar() +
labs(title = "HomePlanet", y = "Frequency")
Train setindeki yolcuların yaklaşık %50’si Dünya’dan ayrıldı.
ggplot(train, aes(x = CryoSleep, fill = factor(CryoSleep))) +
geom_bar() +
labs(title = "CryoSleep", y = "Frequency")Train veri setindeki yolcuların yaklaşık% 30’u CryoSleep’teydi.
ggplot(train, aes(x = Destination, fill = factor(Destination))) +
geom_bar() +
labs(title = "Destination", y = "Frequency")
Train veri set indeki yolcuların yaklaşık% 69’u TRAPPIST-1e’ye
gidiyordu.
veri setindeki yolcuların en fazla %1’i VIP hizmetleri için ödeme yapmadı
Bağımsız Değişken test için (Kategorik)
ggplot(test, aes(x = HomePlanet, fill = factor(HomePlanet))) +
geom_bar() +
labs(title = "HomePlanet", y = "Frequency")Test setindeki yolcuların yaklaşık % 25’si Dünya’dan ayrıldı.
ggplot(test, aes(x = CryoSleep, fill = factor(CryoSleep))) +
geom_bar() +
labs(title = "CryoSleep", y = "Frequency")Test veri setindeki yolcuların yaklaşık% 15’u CryoSleep’teydi.
ggplot(train, aes(x = Destination, fill = factor(Destination))) +
geom_bar() +
labs(title = "Destination", y = "Frequency")
Test veri set indeki yolcuların yaklaşık %29’u TRAPPIST-1e’ye
gidiyordu.
Traindeki gibi yolcuların en fazla %1’i VIP hizmetleri için ödeme
yapmadı.
Sütunu ‘sütun1’,‘sütun2’,‘sütun3’ şeklini alır. Öyleyse, ‘sütun1’ ve ‘sütun2’ özelliklerini hem train hemde testteki çıkaralım ve görselleştirelim.
ggplot(train, aes(x = sütun1, fill = factor(sütun1))) +
geom_bar() +
labs(title = "sütun1", y = "Frequency")ggplot(train, aes(x = sütun3, fill = factor(sütun3))) +
geom_bar() +
labs(title = "sütun3", y = "Frequency")ggplot(test, aes(x = sütun1, fill = factor(sütun1))) +
geom_bar() +
labs(title = "sütun1", y = "Frequency")ggplot(test, aes(x = sütun3, fill = factor(sütun3))) +
geom_bar() +
labs(title = "sütun3", y = "Frequency")
Yukarıdaki grafikten şu sonucu çıkarabiliriz:
Train ve test setindeki yolcuların yaklaşık% 60’ı F ve G güvertesindeydi. Hem train hemde test içindeki CabinSide tarafı S’de bulunan yolcuların yüzdesi ile P arasında pek bir fark yoktur.
Kategorik değişkenleri gördük. Şimdi sayısal değişkenleri görselleştirelim.
AGE
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
Train ve test, yaş değişkeninde aykırı değerler vardır ve dağılım oldukça normaldir.
RoomService
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
RoomService’deki verilerin çoğunluğu sola doğru dağılmıştır ve aykırı
değerleri fazladır.Bunları düzelteceğiz.
Spa
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
RoomService’inkine benzer bir dağılım var. Çok fazla aykırı değer içerir ve normal olarak dağıtılmaz.
VRDeck
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
RoomService, FoodCourt, ShoppingMall, Spa, VRDeck, yolcunun Spaceship Titanic’in birçok lüks olanağının her birinde faturalandırdığı tutardır, bu yüzden VRDeck, FoodCourt ve ShoppingMall’un benzer bir dağılımı olup olmadığını görelim.
FoodCourt
hist(train$FoodCourt, main = "FoodCourt", col = "skyblue", xlab = "FoodCourt", ylab = "Frekans")
rug(jitter(train$FoodCourt), col = "darkblue")hist(test$FoodCourt, main = "FoodCourt", col = "skyblue", xlab = "FoodCourt", ylab = "Frekans")
rug(jitter(test$FoodCourt), col = "darkblue")ShoppingMall
ggplot(train, aes(x = ShoppingMall)) +
geom_histogram( fill = "skyblue", color = "black") +
labs(title = "ShoppingMall", x = "ShoppingMall", y = "Frekans")## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
ggplot(test, aes(x = ShoppingMall)) +
geom_histogram( fill = "skyblue", color = "black") +
labs(title = "ShoppingMall", x = "ShoppingMall", y = "Frekans")## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
VRDeck, FoodCourt ve ShoppingMall’un benzer bir dağılıma sahip olduğunu görebiliriz. Hepsi normal olarak dağılmamıştır ve hepsinin aykırı değerleri vardır.
Formül yazma
\[ \pi= \frac{P_t-P_{t-1}}{P_{t-1}} \]
\[ Y=\beta_0 + \beta_1X + \epsilon \]
\[ Δ = b^2 - 4ac \]