Results and MEF University Evaluation

According to OSYM 2017 results, nearly 1.8 million candidate get the rigt to choose a program and nearly 1 million of them did. After the placement of those who choose a program, placements and empty quota for each program, the highest and lowest scores of the programs have been occured. According to this criteria, we wil evaluate which universities and programs are preferred more, what is the mean maximum and mean minimum scores of the programs, how MEF University’s results and position compared to other universities adn where MEF University should focus in coming years in order to stranghten its position among other private and state universities in Istanbul.

library(dplyr)
library(ggplot2)
library(tidyverse)
library(knitr)
library(stringr)
library(plotly)
library(kableExtra)

load("osym_data_2017_v2.RData")
nrow(osym_data_2017)
## [1] 11465

We will evaluate the results according to factors below:

names(osym_data_2017)
##  [1] "program_id"        "university_name"   "city"             
##  [4] "faculty_name"      "program_name"      "exam_type"        
##  [7] "general_quota"     "general_placement" "min_score"        
## [10] "max_score"         "val_quota"         "val_placement"    
## [13] "val_min_score"     "val_max_score"

In order to evaluate the results, we need to enrich our data with new measures like:
* university_id,
* uni_type (private or state)
* score_gap (gap between max and min scores of a program)
* fullness (if the quota of a program is full or not).

osym_data_2017$general_placement<-as.integer(osym_data_2017$general_placement)
osym_data_2017$general_quota<-as.integer(osym_data_2017$general_quota)
osym_data_2017$score_gap<-osym_data_2017$max_score-osym_data_2017$min_score
osym_data_2017$fullness<-round((osym_data_2017$general_placement/osym_data_2017$general_quota),2)
osym_data_2017$university_id<-substring(osym_data_2017$program_id,1,4)
osym_data_2017$university_typeid<-substring(osym_data_2017$program_id,1,1)
osym_data_2017$university_type<-osym_data_2017$university_typeid
osym_data_2017$counter<-1

#replace university_typeid with definition in order to make our analysis more clear
vect<-ifelse(osym_data_2017$university_type==1,"State","Private")
vect2<-ifelse(substr(osym_data_2017$exam_type,3,6)=="L_1","DL_1",osym_data_2017$exam_type)
osym_data_2017$university_type<-vect
osym_data_2017$exam_type<-vect2

Also we only take universities into consideration which are located in Turkey, so we are eleminating Universities in Northern Cyprus and abroad.

osym_data_2017<-osym_data_2017[osym_data_2017$university_typeid<3, ]
nrow(osym_data_2017)
## [1] 10186

General Facts

According to OSYM 2017 Results, there are 172 universities in Turkey. 109 of those are State Universities and 63 are Private.
These 172 universities offers 318 unique programs. If we add different scholarship types, education types like primary or secondary education and program languages, there are 1936 different programs. Istanbul, Eskişehir and Ankara are top 3 city that offer 40% of total quota in Turkey.

universities<-osym_data_2017 %>% group_by(university_name, university_type) %>% summarise()
table(universities$university_type)
## 
## Private   State 
##      63     109
#use the last character of the program name in order to eleminate different types of same program.

programs<-osym_data_2017 %>% group_by(program_name) %>%summarise()
unique_programs<-programs%>% filter(str_sub(program_name,-1,-1) != ")")
sprintf("Unique programs: %i",nrow(unique_programs))
## [1] "Unique programs: 320"
sprintf("Total programs: %i",nrow(programs))
## [1] "Total programs: 1971"
head(osym_data_2017 %>% group_by(city) %>%  summarise(quota=sum(general_quota), quota_p=quota/sum(osym_data_2017$general_quota) ) %>% arrange(desc(quota)),3)
## # A tibble: 3 x 3
##        city  quota    quota_p
##       <chr>  <int>      <dbl>
## 1  ISTANBUL 100078 0.19511235
## 2 ESKISEHIR  64169 0.12510406
## 3    ANKARA  37124 0.07237705

Which Programs are top students’ choice?

According to minimum scores of the programs, we can see the 10 programs that top students choise. According to the results, Medical Programs are the choise of top students with 5 programs in top 10 programs according to min values of the programs. Also, Koç University is the most prferred university by top students.

top_programs<-osym_data_2017 %>% group_by(university_name, program_name) %>% summarise(min_score=min(min_score))%>% arrange(desc(min_score))
top10_prog<-head(top_programs,10)
kable(top10_prog)
university_name program_name min_score
KOÇ ÜNIVERSITESI Tip (Ingilizce) (Tam Burslu) 543.7331
KOÇ ÜNIVERSITESI Elektrik - Elektronik Mühendisligi (Ingilizce) (Tam Burslu) 541.1376
ISTANBUL MEDIPOL ÜNIVERSITESI Tip Fakültesi (Ingilizce) (Tam Burslu) 537.6752
KOÇ ÜNIVERSITESI Bilgisayar Mühendisligi (Ingilizce) (Tam Burslu) 535.2476
BOGAZIÇI ÜNIVERSITESI Elektrik - Elektronik Mühendisligi (Ingilizce) 530.0887
ISTANBUL ÜNIVERSITESI Cerrahpasa Tip (Ingilizce) 529.1756
KOÇ ÜNIVERSITESI Hukuk (Tam Burslu) 526.9244
IHSAN DOGRAMACI BILKENT ÜNIVERSITESI Elektrik - Elektronik Mühendisligi (Ingilizce) (Tam Burslu) 526.7218
GALATASARAY ÜNIVERSITESI Hukuk 524.7550
BOGAZIÇI ÜNIVERSITESI Bilgisayar Mühendisligi (Ingilizce) 524.2180
graph1 <- osym_data_2017 %>%
  select(program_name,university_name, min_score, city)  %>% group_by(program_name)%>%
  summarise(minScore=min(min_score)) %>%
  arrange(desc(minScore))

top10<-head(graph1,10)

ggplot(top10, aes(x=reorder(program_name,-minScore), y=minScore)) +
  geom_bar(stat = "identity") +
  labs(title="Top 10 Program",x="", y="Min Score",fill="black") +
  theme (axis.text.x=element_text (angle=-90,vjust=0,hjust=0)) +
  scale_x_discrete(labels = function(x) lapply(strwrap(x, width = 40, simplify = FALSE), paste, collapse="\n"))

About MEF

MEF university accepted students with 5 different exam types for 15 different programs. Univercity announced quota for total 817 students and after the results, 768 students placed to a program at MEF Univercity which means MEF University had an average 94% fullnes for their programs.

mef_data<-osym_data_2017  %>% filter (university_id=="2072")

sprintf("Total quota of MEF: %i",sum(mef_data$general_quota))
## [1] "Total quota of MEF: 817"
sprintf("Total placement of MEF: %i",sum(mef_data$general_placement))
## [1] "Total placement of MEF: 768"
mef_exam_type<-osym_data_2017  %>% filter (university_id=="2072") %>% group_by(exam_type) %>%  summarise(quota=sum(general_quota),placement=sum(general_placement) , space=sum(general_quota)-sum(placement), fullness=round(sum(general_placement)/sum(general_quota),2))%>% arrange(desc(quota))
kable(mef_exam_type)
exam_type quota placement space fullness
TM_3 350 315 35 0.90
MF_4 327 327 0 1.00
TM_1 80 66 14 0.82
DL_1 40 40 0 1.00
MF_1 20 20 0 1.00

If we look at the table above, MEF University had a %100 fullnes for the programs in DIL_1, MF_1 and MF_4 exam types. On the other hand 82% fullness in TM_1 and 90% fullnes in TM_3 has been reached. According to this results, MEF University should focus on programs in TM exam types while keep its achivement in other 3 exam types.

If we look deeper, we can see that Faculty of Education has 35 empty space (27% of all quota) so MEF University should focus on increase the reputation of Faculty of Education.

mef_faculty<-osym_data_2017  %>% filter (university_id=="2072") %>% group_by(faculty_name) %>%  summarise(quota=sum(general_quota),placement=sum(general_placement) , space=sum(general_quota)-sum(placement), fullness=round(sum(general_placement)/sum(general_quota),2))%>% arrange(desc(fullness))

ggplot(mef_faculty, aes(x=reorder(faculty_name,-fullness), y=fullness)) +
  geom_bar(stat = "identity", aes(fill= fullness < 1 )) +
  labs(title="",x="", y="Fullness of Quota") +
  theme (axis.text.x=element_text (angle=0,vjust=1,hjust=0.5) ) +
  scale_x_discrete(labels = function(x) lapply(strwrap(x, width = 20, simplify = FALSE), paste, collapse="\n"))+scale_fill_manual(values = c('#7bc043','#ee4035'),guide=FALSE)+geom_text(aes(label=fullness), position=position_dodge(width=0.9), vjust=-0.25) 

ggplot(mef_faculty, aes(x=reorder(faculty_name,space), y=space)) +
  geom_bar(stat = "identity", aes(fill= space > 0.1*sum(quota) )) +
  labs(title="",x="", y="") +
  theme (axis.text.x=element_text (angle=0,vjust=1,hjust=0.5) ) +
  scale_x_discrete(labels = function(x) lapply(strwrap(x, width = 20, simplify = FALSE), paste, collapse="\n"))+scale_fill_manual(values = c('#ee4035','grey'),guide=FALSE)+geom_text(aes(label=space), position=position_dodge(width=0.9), vjust=-0.25) 

MEF University has only 3 programs which is not totally full out of 44 programs. If we look at these programs, we can see that all 3 program is 50% scholarship programs. As a result, we can say that MEF University should not offer less than 50% scholarship in these 3 programs.

mef_empty_prog<-osym_data_2017  %>%  filter (university_id=="2072") %>% group_by(program_name) %>%  summarise(quota=sum(general_quota),placement=sum(general_placement) , space=sum(general_quota)-sum(placement), fullness=round(sum(general_placement)/sum(general_quota),2))%>% arrange(desc(space))%>% filter (fullness<1) 
kable(mef_empty_prog) 
program_name quota placement space fullness
Rehberlik ve Psikolojik Danismanlik (Ingilizce) (%50 Burslu) 60 25 35 0.42
Ekonomi (Ingilizce) (%50 Burslu) 22 10 12 0.45
Isletme (Ingilizce) (%50 Burslu) 22 20 2 0.91

So far we have talked about quotas and placement numbers. Now, lets evaluate the programs according to the minimum and maximum scores of the students placed.

Average minimum point of MEF Universiy programs is 342.6381 and average maximum point is 387.4464. According to the graph below, we expecting programs scatter through lower left corner to upper right corner(generally full scholarship programs). If we look at the plot, a program stands in the upper right corner, which is “Ingilizce Öğretmenliği (50% Burslu)”. This programs needs special attention because it seems some effort may lead this program to one of the top programs in the upper right corner.

ggplot(mef_prog_score, aes(x = min_score, y = max_score, size = general_quota, fill=faculty_name)) +
        geom_point(shape = 21)+ scale_x_continuous(breaks = seq(200, 500, 25))+ scale_y_continuous(breaks = seq(200, 500, 25))+ scale_size_area(max_size = 10)+ theme(axis.line = element_line(size=1, colour = "black"),
              panel.grid.major = element_blank(),
              panel.grid.minor = element_blank(),
              panel.border = element_blank(),
              panel.background = element_blank(),axis.text.x=element_text(colour="black", size = 10),
              axis.text.y=element_text(colour="black", size = 10))+geom_hline(yintercept = 387)+geom_vline(xintercept = 342)

MEF vs. Benchmarks

## 
## Private   State 
##      41      10
## [1] 82796

We assume that MEF University should be compared to Private or State Universities in Istanbul. So all the comparisons will be made according to this assumption. There are 10 State and 41 Private Universities in Istnbul. Total placement at these universities is 82796

When we look at the rank of the programs in MEF University, we can see that almost all full scholarship programs are in top 250 programs according to minimum scores. However, __full scholarship Economcis program is not close to top 250 programs so MEF University should work on how this program become more preferred.

mef_examtype<-c("MF_1","MF_4","TM_1","TM_3","DL_1")
benchmark2<-osym_data_2017 %>% filter(substr(osym_data_2017$city,2,8)=="STANBUL", exam_type %in% mef_examtype) %>% arrange(desc(min_score))%>% mutate(rank=row_number())

mef_prog_rank<-benchmark2%>% filter(university_id=="2072")%>%arrange(desc(-rank))

ggplot(mef_prog_rank, aes(y = reorder(program_name,-rank), x = rank, size=general_quota, fill=-rank )) +scale_fill_continuous(low = "red", high = "green")+
        geom_point(shape=21)+ scale_x_continuous(breaks = seq(0, 2300, 100))+ scale_size_area(max_size = 20)+ theme(axis.line = element_line(size=1, colour = "black"),
              panel.grid.major = element_blank(),
              panel.grid.minor = element_blank(),
              panel.border = element_blank(),
              panel.background = element_blank(),axis.text.x=element_text(colour="black", size = 8, angle=90),
              axis.text.y=element_text(colour="black", size = 8))+geom_vline(xintercept = 250, size=1.2, colour="grey")+ theme(legend.position = "none")+labs(title="Ranks of MEF University Programs",x="", y="",fill="black")

## [1] 700

When we compare MEF University directly to the private universities in Istanbul according to average rank of the offered programs, MEF seems like 5th best private university in Istanbul with an average rank of 700 in all prorams. However, varience between the best and the worst ranked program of MEF university quite big so MEF University should focus close this gap.

benchmark4<-osym_data_2017 %>% filter(substr(osym_data_2017$city,2,8)=="STANBUL", university_type=="Private",exam_type %in% mef_examtype) %>% arrange(desc(min_score))%>% mutate(rank=row_number())

benchmark5<-benchmark3 %>% select(university_name, rank)

ggplot(benchmark5, aes(reorder(x = university_name, rank), y = rank)) +
        geom_boxplot(colour = "black", fill = "#56B4E9")+labs(title="Average rank of programs in private universities in İstanbul",x="", y="",fill="black")+theme(axis.line.x = element_line(size = 0.5, colour = "black"),
              axis.line.y = element_line(size = 0.5, colour = "black"),
              axis.line = element_line(size=1, colour = "black"),
              panel.grid.major = element_blank(),
              panel.grid.minor = element_blank(),
              panel.border = element_blank(),
              panel.background = element_blank(),
              plot.title=element_text(size = 14),
              text=element_text(size = 10),
              axis.text.x=element_text(colour="black", size = 8, angle=-90, vjust=0, hjust=0),
              axis.text.y=element_text(colour="black", size = 10))