Soru #1 İsim, vize, final notlarından “bilgi” adında bir liste nesne oluşturunuz (Bu sorudaki işlemleri liste elemanları ile yapınız, vektör nesnesi kullanmayınız.Bunun için çalışma alanında sadece “bilgi” nesnesi kalmalıdır.).
isim<-c("Ali","Defne","Meltem","Semih","Sevda", "Gizem","Emre","Zeynep", "Utku", "Beril")
vize<-c(60,70,50,80,65,70,85,70,92,80)
final<-c(70,65,50,45,67,75,80,85,95,85)
bilgi <- list(isim,vize,final)
rm(isim,vize,final)
#1a Listenin yapısını inceleyiniz
str(bilgi)
## List of 3
## $ : chr [1:10] "Ali" "Defne" "Meltem" "Semih" ...
## $ : num [1:10] 60 70 50 80 65 70 85 70 92 80
## $ : num [1:10] 70 65 50 45 67 75 80 85 95 85
#1b Listedeki bileşenleri sırası ile “öğrenci”, “vize_not” ve “final_not” adlarını veriniz
names(bilgi) <- c("öğrenci","vize_not","final_not")
#1c “bilgi” listesine final puanının %60’ını ve vize puanının %40’ını alarak hesapladığınız geçme notlarını “not” adıyla ekleyiniz.
bilgi$not <- bilgi$final_not*0.6 + bilgi$vize_not*0.40
#1d Listenin “vize_not” bileşenini yazdırınız.
bilgi$vize_not
## [1] 60 70 50 80 65 70 85 70 92 80
#1e Listenin “final_not” bileşenini yazdırınız.
bilgi$final_not
## [1] 70 65 50 45 67 75 80 85 95 85
#1f Geçme notu en yüksek olan öğrencinin notunu 100 olarak değiştiriniz.
which(bilgi$not==(max(bilgi$not)))
## [1] 9
bilgi$not <-100
- Geçme notu en yüksek olan 9. sıradaki Utku’nun 95 olan notu 100 olarak değişti.
#2 İsim, vize ve final değişkenlerine sahip “test” adında bir veriseti oluşturunuz (Bu sorudaki işlemleri veri seti elemanlarıyla yapınız, vektör nesnesi kullanmayınız. Bunun için çalışma alanında sadece “test” nesnesi kalmalıdır.).
isim<-c("Ali","Defne","Meltem","Semih","Sevda", "Gizem","Emre","Zeynep", "Utku", "Beril")
vize<-c(60,70,50,80,65,70,85,70,92,80)
final<-c(70,65,50,45,67,75,80,85,95,85)
test <- data.frame(isim,vize,final)
rm(isim,vize,final)
#2a Veri setini ilgili fonksiyonu kullanarak komut dosyasının yan sekmesinde tablo şeklinde görüntüleyiniz.
View(test)
print(test)
## isim vize final
## 1 Ali 60 70
## 2 Defne 70 65
## 3 Meltem 50 50
## 4 Semih 80 45
## 5 Sevda 65 67
## 6 Gizem 70 75
## 7 Emre 85 80
## 8 Zeynep 70 85
## 9 Utku 92 95
## 10 Beril 80 85
- View(test) konutu ile yanda sekme açıldı ama markdownda görünmesi için print() i kullandım.
#2b Veri setine final puanının %60’ını ve vize puanının %40’ını alarak hesapladığınız geçme notlarını “not” adıyla ekleyiniz.
test$not <- test$vize*0.6 + test$final*0.40
#2c Veri setinde final notu 70’ten büyük olan gözlemlerden “test_gecti” adlı yeni bir veri seti oluşturunuz.
test_gecti <- subset(test,not>70)
#2d “test_gecti” nesnesinin boyutlarını yazdırınız.
dim(test_gecti)
## [1] 5 4
#2e Tek bir komut satırıyla “test_gecti” nesnesinin sadece vize ve final notlarının betimsek istatistiklerini yazdırınız.
summary(test_gecti[,-1])
## vize final not
## Min. :70.0 Min. :75 Min. :72.00
## 1st Qu.:70.0 1st Qu.:80 1st Qu.:76.00
## Median :80.0 Median :85 Median :82.00
## Mean :79.4 Mean :84 Mean :81.24
## 3rd Qu.:85.0 3rd Qu.:85 3rd Qu.:83.00
## Max. :92.0 Max. :95 Max. :93.20
#2f “test_gecti” nesnesini not değişkenine göre büyükten küçüğe sıralayınız.
test_gecti[order(test_gecti$not),]
## isim vize final not
## 6 Gizem 70 75 72.0
## 8 Zeynep 70 85 76.0
## 10 Beril 80 85 82.0
## 7 Emre 85 80 83.0
## 9 Utku 92 95 93.2