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
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
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"))
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 |
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)
##
## 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))